/*******************************************************************************
* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*     IBM Corporation - initial API and implementation
*********************************************************************************/

// This file was generated by LPG

package org.eclipse.cdt.internal.core.lrparser.xlc.cpp;

public class XlcCPPParserprs implements lpg.lpgjavaruntime.ParseTable, XlcCPPParsersym {

    public interface IsKeyword {
        public final static byte isKeyword[] = {0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0
        };
    };
    public final static byte isKeyword[] = IsKeyword.isKeyword;
    public final boolean isKeyword(int index) { return isKeyword[index] != 0; }

    public interface BaseCheck0 {
        public final static short baseCheck0[] = {0,
            0,0,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,3,1,1,1,1,1,1,
            1,1,2,2,1,1,0,1,0,4,
            2,3,2,3,2,2,1,0,1,1,
            4,4,4,8,8,3,3,4,4,3,
            3,2,2,7,7,7,7,4,4,5,
            6,3,2,2,1,1,1,2,2,2,
            2,2,2,2,2,2,4,7,9,3,
            0,1,2,2,1,2,3,4,1,0,
            3,1,0,3,5,1,4,1,3,3,
            1,3,3,3,1,3,3,1,3,3,
            1,3,3,3,3,1,3,3,1,3,
            1,3,1,3,1,3,1,3,1,5,
            1,3,5,3,3,1,3,3,1,3,
            1,3,1,3,1,3,1,3,1,5,
            1,1,3,3,3,3,3,3,3,3,
            3,3,3,1,2,1,1,3,3,3,
            3,3,3,3,3,3,3,3,1,2,
            1,3,1,0,1,0,1,1,0,1,
            1,1,1,1,1,1,1,1,3,4,
            3,2,1,4,2,1,2,5,7,5,
            1,4,1,0,5,7,2,8,1,1,
            2,2,3,2,3,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,2,1,0,4,4,2,2,2,2,
            2,1,0,1,1,1,1,1,1,2,
            1,2,2,2,1,1,2,2,1,2,
            2,1,2,2,1,2,2,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,3,
            4,4,5,2,5,6,5,0,1,0,
            7,8,0,1,3,1,0,1,3,1,
            7,6,0,7,6,1,0,6,6,4,
            1,3,1,0,1,1,2,1,1,3,
            1,3,1,1,1,1,3,9,2,2,
            3,2,5,3,7,0,1,2,2,1,
            0,1,1,1,3,1,2,1,1,2,
            3,1,1,1,3,2,1,2,2,9,
            8,2,1,3,1,3,1,0,1,0,
            2,1,1,3,1,3,2,1,5,8,
            1,2,3,1,1,7,6,3,0,0,
            1,3,1,1,5,6,6,7,7,0,
            0,1,0,1,1,1,2,4,2,2,
            1,5,1,1,1,1,1,1,1,2,
            1,0,1,3,1,1,2,3,2,1,
            2,2,1,0,1,3,3,5,5,4,
            1,1,1,1,0,1,5,2,2,1,
            2,2,1,0,1,3,4,3,1,1,
            5,2,1,1,3,3,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,2,2,7,1,0,1,3,1,
            1,2,4,2,4,7,9,5,1,3,
            1,0,1,1,3,2,3,2,2,1,
            0,1,1,4,5,2,1,2,2,2,
            2,2,2,2,1,1,2,1,1,2,
            4,4,2,1,2,5,5,3,3,1,
            4,3,1,0,1,3,1,1,1,1,
            2,6,3,1,3,1,4,0,1,1,
            1,3,1,0,4,3,1,2,1,3,
            4,4,4,6,1,0,1,3,1,3,
            0,1,4,5,2,4,2,4,3,3,
            5,3,4,3,1,2,2,2,4,2,
            1,1,2,2,3,2,2,3,1,1,
            1,1,4,1,1,1,1,1,3,3,
            3,4,1,1,1,1,2,4,5,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,2,1,0,1,0,1,1,1,
            1,1,1,4,5,4,6,6,3,5,
            1,1,2,1,7,-199,0,0,0,0,
            -5,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-6,-139,0,0,
            -2,0,0,0,0,-73,-3,0,-4,0,
            0,0,0,0,0,0,-207,0,0,0,
            0,-420,0,0,0,0,0,0,0,-64,
            -265,-16,0,0,0,0,0,-266,0,0,
            0,0,-123,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-9,0,0,-47,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-10,-18,0,0,-111,0,
            0,-81,0,0,0,0,0,0,-43,0,
            0,0,0,-416,0,0,0,0,0,-42,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-11,0,0,-13,-627,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-329,
            0,0,-58,0,0,0,0,-170,-20,0,
            -190,0,0,0,-60,0,0,0,0,0,
            0,0,0,-306,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-221,0,
            0,0,0,0,0,0,0,-182,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-499,0,0,0,0,
            0,-28,0,0,0,0,-69,-19,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -164,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-174,0,0,0,-217,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-435,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-35,0,0,0,0,-474,0,0,
            0,0,0,-183,0,0,-21,0,-79,-185,
            -66,0,0,0,0,0,0,0,0,-155,
            0,0,0,0,0,0,-169,-218,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-436,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-338,0,0,0,0,-23,-67,0,
            0,0,0,-573,0,0,0,0,-369,0,
            0,0,0,0,0,0,0,0,0,-206,
            0,0,0,0,0,-130,-24,-453,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-240,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-493,0,0,0,-163,0,0,0,
            0,0,0,0,0,0,0,0,-429,0,
            0,0,0,0,0,-222,0,0,0,-618,
            0,0,0,-519,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -40,0,0,0,-407,0,0,0,-191,0,
            0,0,0,0,0,0,-82,-25,0,0,
            0,0,0,-208,0,0,0,0,-652,0,
            0,0,0,0,0,0,0,-540,0,0,
            0,0,0,-223,0,0,0,0,-681,0,
            0,0,0,0,-653,0,0,0,0,-412,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-303,0,0,0,0,0,0,0,-77,
            0,0,0,0,0,0,0,-693,-26,0,
            0,0,0,0,-156,0,0,0,0,-585,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-274,0,-184,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-273,0,0,
            0,0,0,0,-84,-526,0,0,0,0,
            0,0,0,0,0,0,0,0,-34,-409,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-680,0,0,0,
            0,0,0,0,-63,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-62,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-44,
            -536,-537,0,0,0,0,0,-196,0,0,
            0,0,0,-283,0,0,-57,0,0,-611,
            0,0,-160,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-305,
            0,0,-660,0,0,0,0,0,0,0,
            0,0,-107,-45,0,0,0,0,0,-272,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-614,0,0,
            -80,-137,0,0,0,0,0,0,0,0,
            0,0,-48,0,0,0,-209,-688,0,-50,
            -326,0,-320,0,0,0,0,0,0,0,
            0,-280,0,0,-51,-417,0,-718,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -74,0,0,0,-633,-403,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-138,0,0,0,0,0,0,
            0,0,0,0,0,-54,0,0,-475,-404,
            0,0,0,0,0,-504,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-401,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-210,0,
            0,0,0,0,0,-590,0,0,0,0,
            -59,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-121,0,-61,0,0,
            0,0,0,0,0,0,0,0,-610,0,
            0,0,0,0,0,-591,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-118,-83,-418,0,0,0,0,0,
            0,0,0,0,0,-112,0,0,-76,-534,
            0,0,-289,-212,0,-179,-86,0,0,0,
            0,0,0,0,0,-600,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-110,0,0,-535,0,0,0,0,
            0,0,0,0,0,-658,-371,0,-451,0,
            0,0,0,0,0,-152,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-87,0,-88,-119,0,0,0,0,
            0,0,0,0,0,0,-269,0,0,-102,
            0,0,-103,0,0,-231,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-492,0,0,0,0,0,0,0,
            0,0,0,0,0,-647,-354,0,-576,-104,
            0,0,0,0,0,-254,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-120,0,0,0,0,
            0,0,0,0,0,0,-105,0,-56,-485,
            0,0,-353,0,0,0,-124,-255,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-574,0,0,0,0,0,
            0,0,-131,0,0,0,0,0,-372,0,
            -577,-295,0,0,-106,0,0,-256,0,0,
            0,0,-454,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-583,0,0,0,
            0,0,0,0,0,0,0,0,-108,0,
            -578,0,0,0,-165,0,0,-257,0,0,
            0,0,-109,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-461,0,0,0,-113,0,
            0,0,-399,0,0,0,0,0,-117,0,
            -278,-125,0,0,0,0,0,-258,0,0,
            0,0,-502,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-584,0,0,0,-126,-333,
            0,0,-132,0,0,0,0,0,0,0,
            -579,-127,0,0,-172,0,0,-259,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-708,0,0,0,0,0,
            0,0,-644,0,0,0,0,0,0,0,
            -620,-128,0,0,-193,0,0,-260,0,0,
            0,0,-588,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-135,0,0,
            0,0,0,0,0,0,0,0,-515,0,
            -279,-656,0,0,-347,0,0,-261,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-636,0,0,0,-478,0,
            0,0,-679,0,0,0,0,-211,0,0,
            -136,0,0,0,-140,0,0,-262,0,0,
            0,0,-142,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-661,0,0,0,0,0,
            0,0,-143,0,0,0,0,0,0,0,
            -281,0,0,0,0,0,0,-263,0,0,
            0,0,-144,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-370,0,0,-145,-146,
            0,0,-180,0,0,0,0,0,0,0,
            -328,-530,0,0,-147,0,0,-264,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-228,0,-716,-419,0,0,
            0,0,-148,0,0,0,0,0,-291,0,
            -268,0,0,0,-479,0,0,-310,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-702,0,0,0,0,-374,
            0,0,0,-334,0,0,0,0,0,-349,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-149,0,0,0,0,-351,0,0,
            0,0,-538,0,0,0,0,0,0,0,
            0,-683,-440,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-194,
            -441,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-150,0,-151,
            0,0,-175,0,-129,0,0,0,0,-300,
            0,-195,0,-375,0,-230,0,0,0,-302,
            -232,0,-153,0,0,0,0,0,0,0,
            0,0,0,0,0,-166,-197,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -167,0,0,0,0,0,-442,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-267,-443,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-171,-304,0,0,-589,0,0,-286,
            -322,0,0,0,-288,-323,0,-177,-359,-324,
            0,0,0,0,0,0,-192,0,-400,0,
            0,0,0,0,0,0,0,0,0,-659,
            -198,0,-276,0,0,0,0,0,0,0,
            0,0,-555,0,0,0,0,0,0,0,
            -444,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-325,-445,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-341,-282,-467,0,0,
            -710,0,-685,0,0,0,-703,0,0,0,
            0,-287,0,0,0,0,0,-414,-496,0,
            -292,0,0,0,0,0,0,0,0,0,
            0,0,-415,-476,-309,-460,-294,0,0,0,
            0,0,0,0,0,0,0,0,-307,0,
            0,0,0,0,-446,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-447,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-342,
            0,0,0,0,-711,0,-704,0,0,0,
            -483,-176,-348,-311,0,0,-497,-352,0,0,
            0,0,-312,0,-313,0,-314,0,0,0,
            0,0,0,0,0,0,-315,-316,0,0,
            0,0,0,-317,0,0,0,0,0,0,
            0,0,-597,0,0,0,0,0,-448,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-363,-449,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-318,-649,-319,0,0,-30,0,
            -662,-613,-321,-335,-336,-14,0,0,0,-477,
            -503,-406,0,-512,0,0,-337,0,0,0,
            -343,0,0,0,0,0,0,0,0,-402,
            -522,-516,0,0,0,0,0,0,0,-344,
            0,0,0,0,0,0,-345,0,0,0,
            0,0,-450,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -253,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-570,-346,
            0,0,0,0,0,-355,0,0,0,0,
            0,0,0,-357,-587,-617,0,-358,0,0,
            0,0,-455,0,-408,0,0,0,-465,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-360,0,0,-495,0,
            0,0,0,0,0,0,0,0,0,-361,
            0,0,0,0,0,-517,0,0,0,0,
            -364,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-158,-410,-366,-367,-368,0,0,
            -598,0,0,0,0,-377,0,0,-527,-567,
            0,0,-378,-379,0,-78,0,0,0,-568,
            0,0,0,0,0,0,0,-518,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-380,0,0,0,-381,0,
            0,0,-382,0,0,0,0,0,-383,0,
            0,0,0,0,-411,-384,0,-520,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-630,-385,0,0,-386,0,
            0,0,-634,0,0,0,0,0,-387,0,
            -388,-601,0,0,-462,-481,0,-524,-521,0,
            0,0,0,-389,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-390,0,0,-391,0,
            0,0,0,0,0,0,0,0,-599,0,
            0,-650,-392,0,0,-393,0,0,-616,0,
            0,0,0,-394,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-525,-251,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-395,-500,-396,0,0,-673,0,
            0,-675,0,0,0,-669,0,-694,0,-397,
            0,-696,0,-700,0,-398,0,0,0,0,
            -554,0,0,0,-691,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-405,0,0,-709,0,-707,0,0,0,
            0,0,0,0,-421,-422,0,-671,-456,0,
            0,-571,0,0,-528,0,0,0,0,-665,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-430,0,0,0,-464,-466,-468,0,0,
            0,0,0,0,0,-469,0,-575,0,0,
            0,-539,0,0,0,0,-470,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-162,0,
            -471,-510,-473,-486,0,0,0,0,0,0,
            0,0,-488,0,-674,-489,0,0,-490,-457,
            -491,-36,0,0,0,0,0,0,0,-586,
            0,0,0,-603,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-505,-506,0,0,-513,0,-514,0,
            0,0,0,-529,-531,0,0,0,0,0,
            -604,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-277,-543,
            -544,-545,-546,-547,0,-548,0,0,0,0,
            -549,0,0,-550,-551,0,0,-85,0,0,
            0,0,0,-552,-553,0,0,0,0,-557,
            0,0,-623,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-559,-690,-560,-565,0,-569,0,0,
            0,0,0,0,0,-580,-581,0,0,-664,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-7,0,0,0,
            0,-301,-615,0,-582,0,0,0,0,0,
            0,0,-608,-609,0,0,-619,-213,0,0,
            -631,0,-645,0,0,0,0,-646,0,0,
            0,0,-648,-651,0,0,0,-625,-667,-628,
            0,-38,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-498,0,0,0,
            0,0,-676,-682,-684,-692,-701,-214,-235,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-637,-714,
            0,0,0,0,0,0,0,0,0,-632,
            0,0,-635,-638,0,0,0,0,0,-293,
            0,0,0,0,-72,-639,-41,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-640,
            0,-75,0,-641,-241,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-677,0,0,-678,-452,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-605,0,0,0,0,-689,-122,
            0,0,0,0,0,0,0,0,0,-642,
            0,0,0,0,0,0,0,0,-695,-698,
            0,0,0,0,0,-655,0,0,0,0,
            0,0,0,0,-27,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-699,-706,-717,0,
            -697,0,0,0,0,-556,0,0,0,0,
            -413,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-509,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-332,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-439,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -437,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-65,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-252,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-298,-330,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -643,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-438,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-463,0,
            0,0,0,0,-8,0,0,0,0,0,
            0,0,0,0,0,0,0,-327,0,0,
            0,0,0,0,0,0,-219,0,0,0,
            0,0,0,0,0,0,0,-225,0,0,
            0,0,0,-29,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-593,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-224,0,0,0,0,
            0,0,-99,0,0,0,0,0,0,0,
            0,-670,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-32,0,0,0,0,0,0,0,
            0,0,0,-297,0,0,0,0,0,-215,
            -594,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-216,0,0,0,0,0,0,
            -17,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-68,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-248,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-663,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-434,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-472,-159,0,0,
            0,0,-237,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-558,-205,
            0,0,0,0,0,0,0,-270,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-271,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -561,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-201,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-622,-49,0,0,0,0,0,-626,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-624,-70,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -71,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-666,-116,0,0,
            0,0,0,0,0,0,0,-629,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-178,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-668,-181,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-46,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-200,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -672,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-229,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-705,-339,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-350,0,
            0,0,0,0,0,0,0,0,-501,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-715,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-22,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -154,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-242,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-249,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-250,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-308,0,0,0,0,0,0,0,
            0,-290,0,0,0,0,0,0,-101,0,
            0,0,0,0,-484,0,0,0,0,0,
            0,0,0,-533,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-572,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-161,0,0,0,0,0,0,
            0,0,0,0,0,-602,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-362,0,0,0,0,
            0,0,0,0,0,0,0,-607,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-423,0,0,0,0,0,0,0,-31,
            0,0,0,0,0,0,-494,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -243,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-365,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-244,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-245,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-532,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-431,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-432,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-433,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -507,0,0,0,0,0,0,0,0,0,
            0,0,0,-356,0,0,0,0,0,0,
            -612,0,0,0,0,0,0,-542,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-299,0,0,0,-541,0,
            0,0,0,0,0,-1,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-89,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-246,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-247,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-376,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-712,0,0,0,0,0,0,0,0,
            0,0,0,0,-39,0,0,0,0,0,
            -202,0,0,0,0,0,-621,0,0,0,
            0,0,0,0,0,0,0,0,-33,0,
            0,0,0,0,0,-141,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-606,0,0,0,0,0,
            0,0,0,-114,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-657,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-157,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-480,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-220,0,0,0,0,0,0,
            -186,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-226,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-428,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-227,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-654,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-115,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-236,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-373,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-713,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-90,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -238,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-239,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-275,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-523,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-12,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-15,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-686,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-285,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-52,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-687,0,0,0,-37,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-203,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-53,0,-204,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-284,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-55,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -91,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-92,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-93,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-94,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-95,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-96,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-97,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,-98,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            -100,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-133,0,0,0,0,0,-424,
            0,0,0,0,0,0,0,0,-459,0,
            -134,0,-595,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-189,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,-233,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,-234,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-458,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,-511,0,
            0,0,0,0,-340,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0
        };
    };

    public interface BaseCheck1 {
        public final static short baseCheck1[] = {
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-296,0,0,0,0,0,
            0,0,0,0,0,0,0,-173,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,-482,0,0,0,0,0,-592,
            0,-596,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,-168,0,0,0,0,
            0,0,0,-425,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-187,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-188,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,-719,0,0,0,0,0,
            -331,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,-487,0,0,0,0,0,0,0,0,
            0,0,-562,0,0,0,0,0,0,0,
            0,0,-508,0,0,0,0,0,0,0,
            0,0,0,0,-426,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,-427,0,0,0,
            0,0,0,-564,0,-563,0,0,0,0,
            0,0,-566,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0
        };
    };

    public final static short baseCheck[] = new short[BaseCheck0.baseCheck0.length + BaseCheck1.baseCheck1.length];
    {
        int index = 0;
        System.arraycopy(BaseCheck0.baseCheck0, 0, baseCheck, index, BaseCheck0.baseCheck0.length);
        index += BaseCheck0.baseCheck0.length;
        System.arraycopy(BaseCheck1.baseCheck1, 0, baseCheck, index, BaseCheck1.baseCheck1.length);
    };
    public final int baseCheck(int index) { return baseCheck[index]; }
    public final static short rhs[] = baseCheck;
    public final int rhs(int index) { return rhs[index]; };

    public interface BaseAction0 {
        public final static char baseAction0[] = {
            214,5,158,82,82,32,32,106,106,48,
            48,41,41,214,1,1,15,15,15,15,
            15,15,15,17,17,17,16,11,11,6,
            6,6,6,6,6,2,93,93,4,4,
            12,12,56,56,175,175,176,86,86,55,
            18,18,18,18,18,18,18,18,18,18,
            18,18,18,18,18,18,18,18,18,18,
            177,177,177,159,159,19,19,19,19,19,
            19,19,19,19,19,19,19,19,20,20,
            215,215,216,216,217,180,180,181,181,178,
            178,182,179,179,21,21,22,22,23,23,
            23,24,24,24,24,25,25,25,26,26,
            26,34,34,34,34,34,36,36,36,37,
            37,38,38,39,39,42,42,45,45,46,
            46,58,58,58,58,58,70,70,70,74,
            74,76,76,79,79,81,81,83,83,84,
            84,85,85,85,85,85,85,85,85,85,
            85,85,85,85,33,33,49,49,49,49,
            49,49,49,49,49,49,49,49,49,47,
            35,160,160,124,124,218,218,114,249,249,
            96,96,96,96,96,96,96,96,96,97,
            97,97,94,94,59,59,219,219,98,98,
            98,135,135,220,220,99,99,99,99,221,
            221,100,100,100,100,100,101,101,103,103,
            103,103,103,103,103,103,60,60,60,60,
            60,136,136,134,134,61,222,31,31,31,
            31,31,53,53,67,67,67,67,67,122,
            122,129,129,129,129,129,130,130,130,131,
            131,131,132,132,132,137,137,137,68,68,
            68,68,68,69,69,69,13,14,14,14,
            14,14,14,14,14,14,14,14,107,125,
            125,125,125,125,125,116,116,116,184,185,
            185,117,117,223,187,187,186,186,161,161,
            138,91,91,162,63,52,188,188,64,105,
            105,163,163,183,183,139,140,140,141,88,
            88,189,189,77,77,77,72,72,71,78,
            78,95,95,87,87,87,75,119,119,127,
            126,126,50,50,73,73,80,80,57,123,
            123,123,108,108,108,109,109,110,110,110,
            111,111,142,142,142,144,144,143,143,250,
            250,120,120,225,225,225,225,225,165,51,
            51,191,224,224,166,166,112,112,112,113,
            193,226,226,44,44,115,121,121,121,121,
            228,146,145,145,118,118,118,194,195,195,
            195,195,195,195,195,195,195,195,195,230,
            230,227,227,229,229,148,149,149,149,149,
            150,231,151,147,147,232,232,196,196,196,
            196,133,133,133,233,233,8,8,9,234,
            234,235,197,190,190,198,198,199,200,200,
            7,7,10,236,236,236,236,236,236,236,
            236,236,236,236,236,236,236,236,236,236,
            236,236,236,236,236,236,236,236,236,236,
            236,236,236,236,236,236,236,236,236,236,
            236,236,236,236,236,89,92,92,201,201,
            168,168,169,169,169,169,169,169,3,170,
            170,167,167,202,251,252,252,253,253,254,
            255,255,203,204,204,204,204,237,237,237,
            153,153,153,153,153,154,155,155,152,152,
            104,90,102,102,192,192,156,156,238,238,
            238,171,171,164,164,239,239,27,27,27,
            43,43,28,28,240,240,205,205,205,206,
            206,241,241,207,207,29,29,242,242,208,
            208,208,208,30,65,243,243,244,244,209,
            209,209,172,172,172,19,19,19,19,34,
            34,46,17,97,245,157,157,157,128,128,
            31,62,67,141,141,141,148,148,148,223,
            228,146,75,88,184,162,13,13,50,104,
            104,104,18,14,14,14,80,80,66,40,
            173,174,174,174,174,174,174,174,174,174,
            211,211,247,247,246,246,210,210,50,60,
            60,1,1,256,95,95,95,95,95,95,
            95,212,213,213,195,54,1834,35,3267,3255,
            5724,2223,27,30,31,1654,1590,26,28,3254,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,652,597,598,599,2070,1533,177,
            2589,1620,2643,2605,2788,2713,6304,419,2790,77,
            308,2813,176,2806,4961,191,266,2505,35,1703,
            32,5759,4085,27,30,31,1654,1590,57,28,
            1976,1143,77,269,264,265,1563,1563,5086,35,
            1703,32,4863,2584,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,1907,189,189,2055,2402,
            2352,34,2589,309,2643,2605,2788,2713,3720,1878,
            3726,276,279,282,3249,2298,520,992,6745,939,
            5436,285,5627,1946,645,5837,4375,4784,6180,1630,
            35,1703,32,6769,3083,41,30,31,1654,1590,
            3859,35,1703,32,5364,4563,27,30,31,1654,
            1590,374,28,7538,2437,534,2505,4859,1909,35,
            3267,3255,5724,2593,27,30,31,1654,1590,26,
            28,3254,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,652,597,598,599,998,
            5741,177,2589,521,2643,2605,2788,2713,5738,617,
            2790,1240,308,2813,176,623,1117,191,266,8297,
            680,354,1199,356,2055,35,317,349,1121,3706,
            600,597,598,599,61,269,264,265,1923,2584,
            615,2651,601,597,598,599,925,2723,3559,35,
            1703,32,4863,6013,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,3153,309,2055,35,1509,424,
            919,162,1535,276,279,282,3249,725,520,992,
            6964,426,5471,285,347,463,645,5837,4375,4784,
            6180,1719,35,1703,32,6769,3144,2451,30,31,
            1654,1590,672,2047,600,597,598,599,3157,1944,
            488,496,3155,1430,3168,7538,483,3167,2505,3174,
            3859,3244,161,578,2055,35,6535,4635,3559,35,
            1703,32,4863,6013,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,3153,1692,5216,35,1703,32,
            4863,162,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,3153,3765,35,314,3144,3988,2055,3480,
            549,575,3055,579,3525,35,312,78,3157,520,
            4344,1776,3155,5543,3168,3069,618,3167,3246,3174,
            77,3244,161,578,3974,1563,4758,2959,3559,35,
            1703,32,4863,6013,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,3153,2874,5216,35,1703,32,
            4863,162,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,3153,3765,35,314,3144,6035,628,1529,
            549,575,3055,579,4672,35,312,1713,3157,2323,
            35,432,3155,2911,3168,3416,359,3167,3246,3174,
            5934,3244,161,578,3976,1563,2518,719,4162,35,
            1703,32,4863,6013,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,3153,193,5086,35,1703,32,
            4863,162,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,3533,2055,35,4047,3144,2055,35,330,
            549,575,3055,579,360,42,3253,2485,3157,3765,
            35,566,3155,6539,3168,3430,2584,3167,3246,3174,
            4337,3244,161,578,4237,35,1703,32,4863,1384,
            27,30,31,1654,1590,26,28,2249,296,23,
            25,50,2263,106,76,77,108,2513,2563,2543,
            2590,224,604,3032,3143,2959,839,177,2589,3735,
            2643,2605,2788,2713,3927,2651,2790,520,730,2813,
            176,5580,1283,414,4533,35,1703,32,5759,214,
            27,30,31,1654,1590,56,28,2910,2055,3775,
            550,575,3055,579,1719,35,1703,32,495,4500,
            40,30,31,1654,1590,3793,35,1703,32,4863,
            3735,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,2590,3525,35,315,2301,415,2047,177,2589,
            77,2643,2605,2788,2713,8229,2651,2790,5943,1,
            2813,176,1384,1563,414,3946,35,1703,32,4863,
            3631,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,2590,2584,189,2055,35,2352,311,177,2589,
            421,2643,2605,2788,2713,195,2651,2790,1548,88,
            2813,176,102,1496,414,77,1719,35,1703,32,
            958,2732,3592,30,31,1654,1590,415,2047,2502,
            4087,35,1703,32,4863,1925,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,2590,3159,712,325,
            3183,60,4340,177,2589,5683,2643,2605,2788,2713,
            605,3032,2790,358,361,2813,176,415,2047,613,
            593,422,417,4501,35,1703,32,4863,378,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,2590,
            2596,4864,4085,678,3724,6501,177,2589,2973,2643,
            2605,2788,2713,4636,2466,2790,584,1535,2813,176,
            4096,412,191,3484,35,1703,32,4863,1488,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,2590,
            2459,3775,2096,2055,35,1509,424,2589,2501,2643,
            2605,2788,2713,520,2984,2790,4398,5220,2943,197,
            4012,35,1703,32,4863,1825,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,2590,467,4734,35,
            564,4401,1535,177,2589,362,2643,2605,2788,2713,
            1746,1790,2790,3178,215,2813,176,5934,4929,3280,
            821,2584,1563,2055,35,2352,313,611,601,597,
            598,599,2067,2505,1889,3181,3083,1472,4194,35,
            1703,32,6187,2635,27,30,31,1654,1590,26,
            28,3179,193,474,547,3631,3727,35,1703,32,
            4863,3676,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,603,520,4397,630,3252,5687,177,
            2589,2535,2643,2605,2788,2713,946,465,2790,5928,
            2467,2813,176,8126,1563,3281,4501,35,1703,32,
            4863,324,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,4094,189,1548,772,3776,704,177,
            2589,3148,2643,2605,2788,2713,3490,234,2790,77,
            713,2813,176,2940,1563,408,4501,35,1703,32,
            4863,225,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,427,189,712,3675,463,134,177,
            2589,4767,2643,2605,2788,2713,2153,89,2790,4704,
            102,2813,176,6888,2841,408,4501,35,1703,32,
            4863,584,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,5818,3825,2055,35,2352,316,177,
            2589,628,2643,2605,2788,2713,68,3709,2790,2201,
            3083,2813,176,3070,1535,408,1535,2055,35,1509,
            424,601,597,598,599,357,4087,35,1703,32,
            4863,407,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,77,255,1598,3083,2904,2498,177,
            2589,308,2643,2605,2788,2713,520,3070,2790,77,
            7465,2813,176,411,1563,613,3871,35,1703,32,
            4863,406,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,3573,189,928,77,3548,1790,177,
            2589,1048,2643,2605,2788,2713,3994,1535,2790,425,
            832,2813,176,3185,310,175,4501,35,1703,32,
            4863,404,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,2055,35,2352,4046,429,2929,177,
            2589,463,2643,2605,2788,2713,4101,1535,2790,77,
            3290,2813,176,339,1563,192,4501,35,1703,32,
            4863,479,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,428,189,409,77,463,1598,177,
            2589,1138,2643,2605,2788,2713,4204,3568,2790,3638,
            4663,2813,176,2584,7951,188,411,5818,4501,35,
            1703,32,4863,612,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,2681,35,2352,311,533,
            2438,177,2589,77,2643,2605,2788,2713,4856,3070,
            2790,77,1331,2813,176,3651,1563,187,4501,35,
            1703,32,4863,4604,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,51,189,2055,4103,2352,
            74,177,2589,1384,2643,2605,2788,2713,4216,1025,
            2790,77,585,2813,176,3364,1563,186,4501,35,
            1703,32,4863,6290,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,3903,189,2551,3147,742,
            4406,177,2589,3070,2643,2605,2788,2713,4250,2366,
            2790,68,2364,2813,176,332,2911,185,4501,35,
            1703,32,4863,3447,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,2681,35,2352,4108,2692,
            3080,177,2589,77,2643,2605,2788,2713,4778,338,
            2790,77,3955,2813,176,5818,1563,184,4501,35,
            1703,32,4863,2413,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,4500,189,623,44,3253,
            998,177,2589,3257,2643,2605,2788,2713,4254,418,
            2790,77,1564,2813,176,5818,1563,183,4501,35,
            1703,32,4863,3447,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,388,189,910,77,363,
            370,177,2589,7004,2643,2605,2788,2713,3790,3070,
            2790,68,4864,2813,176,4473,6501,182,4501,35,
            1703,32,4863,2413,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,2055,35,2352,4153,2055,
            4038,177,2589,3257,2643,2605,2788,2713,939,335,
            2790,77,93,2813,176,1048,7083,181,4501,35,
            1703,32,4863,222,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,2055,35,2352,565,369,
            370,177,2589,1546,2643,2605,2788,2713,2083,391,
            2790,68,70,2813,176,331,593,180,4501,35,
            1703,32,4863,203,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,1889,2323,35,432,6277,
            324,177,2589,77,2643,2605,2788,2713,1640,624,
            2790,77,5230,2813,176,1125,1563,179,4501,35,
            1703,32,4863,1283,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,77,3595,4500,2459,3775,
            7215,177,2589,322,2643,2605,2788,2713,466,3455,
            2790,77,71,2813,176,1535,2293,178,3643,35,
            1703,32,4863,716,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,3153,2323,35,432,2097,378,
            2055,35,330,189,2792,483,1598,440,2827,1598,
            4119,35,1703,32,6187,2802,27,30,31,1654,
            1590,59,28,531,3359,2941,3812,2760,4119,35,
            1703,32,6187,3070,27,30,31,1654,1590,58,
            28,3929,214,4631,35,1703,32,4863,2811,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,3153,
            5818,4631,35,1703,32,4863,162,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,3153,1019,389,
            326,3144,642,1133,162,2055,35,1509,424,324,
            77,390,5818,3157,68,854,5818,3155,593,3168,
            77,5818,3167,5681,3174,1726,3244,161,173,3144,
            600,597,598,599,1592,3776,1036,2597,3282,321,
            4190,3157,8402,457,24,3155,4082,3168,2804,308,
            3167,1150,3174,6709,3244,161,172,4631,35,1703,
            32,4863,715,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,108,
            2513,2563,2543,3153,5818,4631,35,1703,32,4863,
            162,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,3153,375,1229,77,3144,413,4050,162,2638,
            5672,2055,35,1509,424,3445,5818,3157,4509,77,
            5818,3155,387,3168,2313,416,3167,1699,3174,77,
            3244,161,171,3144,1314,379,2694,2340,384,2800,
            520,2985,3385,2674,7534,3157,8402,620,3383,3155,
            677,3168,3779,4131,3167,49,3174,2413,3244,161,
            170,4631,35,1703,32,4863,46,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,3153,5818,4631,
            35,1703,32,4863,162,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3153,5818,208,68,3144,
            3880,1535,162,2055,35,1509,424,2055,35,1509,
            424,3157,1325,3642,370,3155,387,3168,77,1765,
            3167,1252,3174,1940,3244,161,169,3144,69,379,
            2694,2340,384,77,68,2694,77,4056,1986,3157,
            8402,2953,1598,3155,377,3168,212,470,3167,2599,
            3174,469,3244,161,168,4631,35,1703,32,4863,
            587,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,3153,232,4631,35,1703,32,4863,162,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,3153,
            5818,1310,1384,3144,4097,1535,162,2055,35,1509,
            424,77,1638,5818,4731,3157,6062,77,5818,3155,
            387,3168,1450,426,3167,1329,3174,509,3244,161,
            167,3144,68,379,2694,2340,384,1347,1432,600,
            597,598,599,3157,1431,53,1598,3155,577,3168,
            52,468,3167,5740,3174,4082,3244,161,166,4631,
            35,1703,32,4863,586,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3153,5818,4631,35,1703,
            32,4863,162,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,108,
            2513,2563,2543,3153,6131,3447,2514,3144,3261,4269,
            162,4341,3070,1126,1444,5867,4044,1851,330,3157,
            68,77,5818,3155,77,3168,2907,2302,3167,4911,
            3174,2696,3244,161,165,3144,600,597,598,599,
            2584,2584,68,600,597,598,599,3157,2810,1369,
            2886,3155,1691,3168,633,2413,3167,3685,3174,925,
            3244,161,164,4631,35,1703,32,4863,231,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,3153,
            334,5086,35,1703,32,4863,162,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,2590,322,3594,
            3759,3144,706,705,1745,2589,2793,2643,2605,2788,
            3704,365,370,3157,1901,77,77,3155,1724,3168,
            3245,3251,3167,5766,3174,5818,3244,161,163,5086,
            35,1703,32,4863,913,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,2590,3800,602,1607,2576,
            35,1509,424,2589,2651,2643,2605,2788,2713,1708,
            3941,2790,4097,1119,2943,197,4501,35,1703,32,
            4863,2196,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,2590,308,827,5818,3719,232,4057,177,
            2589,2584,2643,2605,2788,2713,1716,3486,2790,6128,
            68,2813,176,3168,2588,641,2323,35,2918,3142,
            68,601,597,598,599,672,2047,622,4501,35,
            1703,32,4863,4035,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,2863,4085,438,235,2976,
            49,177,2589,2983,2643,2605,2788,2713,233,3162,
            2790,2035,1044,2813,176,5818,3166,140,4501,35,
            1703,32,4863,707,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,77,3177,621,72,3274,
            4872,177,2589,77,2643,2605,2788,2713,3875,3372,
            2790,3554,68,2813,176,5818,5818,3471,5818,4501,
            35,1703,32,4863,3866,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,2590,611,90,385,6279,
            634,2793,177,2589,4033,2643,2605,2788,2713,2584,
            442,2790,77,6285,2813,176,2089,1389,3639,4696,
            35,1703,32,4863,3056,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3153,6291,5086,35,1703,
            32,4863,162,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,108,
            2513,2563,2543,2590,2672,5934,1695,3144,607,4378,
            1563,2589,77,2643,2605,3646,68,4401,68,3157,
            2888,708,77,3155,5959,3168,2963,2385,3167,6732,
            3174,5818,3244,161,160,4761,35,1703,32,4863,
            193,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,2590,131,3376,1438,77,256,68,177,2589,
            2637,2643,2605,2788,2713,1745,4206,2790,77,6346,
            2813,176,5818,1563,222,5086,35,1703,32,4863,
            2584,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,2590,2791,189,3583,226,3276,3686,238,2589,
            2651,2643,2605,2788,2713,4359,2570,2790,5818,3890,
            2943,197,5086,35,1703,32,4863,2668,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,106,76,77,108,2513,2563,2543,2590,1031,
            4189,2765,3988,3153,5882,585,2589,4340,2643,2605,
            2788,2713,97,3155,2790,4050,3259,2943,197,3374,
            6354,3470,2044,35,1509,424,601,597,598,599,
            5818,672,2047,6282,5086,35,1703,32,4863,459,
            27,30,31,1654,1590,26,28,2249,296,23,
            25,50,2263,106,76,77,108,2513,2563,2543,
            2590,2651,487,3772,4282,2413,49,5035,2589,5100,
            2643,2605,2788,2713,5165,2890,2790,2035,2033,2943,
            197,5086,35,1703,32,4863,329,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,2590,1947,1439,
            4510,4640,4965,713,4796,2589,4861,2643,2605,2788,
            2713,3062,541,2790,4233,3373,2943,197,2055,35,
            1509,424,672,2047,5295,3483,601,597,598,599,
            340,3722,370,5086,35,1703,32,4863,458,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,2590,
            539,540,49,5380,2584,5849,1982,2589,5386,2643,
            2605,2788,2713,2035,1114,2790,3471,4202,2943,197,
            5346,35,1703,32,4863,461,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,2590,5411,35,1509,
            424,3882,1773,2782,2589,1899,2643,2605,2788,2713,
            271,296,2790,2350,4339,2943,197,4230,3765,35,
            489,4338,6494,4470,652,597,598,599,3879,601,
            597,598,599,4799,844,143,98,644,5818,5728,
            5818,308,4826,35,1703,32,4863,266,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,648,76,77,269,264,265,3936,35,489,
            5507,6494,5579,4925,4310,3636,1558,4989,2368,5086,
            35,1703,32,4863,4034,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,3476,309,600,597,598,599,2438,
            5743,9900,276,279,282,3249,9900,9900,992,6745,
            5818,3464,285,5818,5818,645,5837,4375,4784,6180,
            4044,35,330,9900,6769,2067,5818,2485,35,1703,
            32,5508,4563,27,30,31,1654,1590,374,28,
            2651,9900,5651,3378,7538,3712,67,600,597,598,
            599,9900,9900,9900,600,597,598,599,66,9900,
            5818,1384,5738,925,5818,5086,35,1703,32,4863,
            7150,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,108,2513,2563,
            2543,3539,65,9900,616,9900,64,1117,354,1199,
            356,9900,2299,9900,349,1121,482,3366,3374,9900,
            9900,672,2047,5818,367,997,5818,5281,35,1703,
            32,4863,9900,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,108,
            2513,2563,2543,3153,2203,55,6874,9900,54,5818,
            5523,35,1509,424,3882,486,3366,3374,913,9900,
            5934,9900,9900,271,296,1563,341,345,780,5818,
            5818,601,597,598,599,3144,6344,652,597,598,
            599,101,1607,9900,9900,1583,9900,3157,9900,9900,
            2289,3155,9900,3168,308,193,3167,2841,3995,9900,
            266,3767,3021,601,597,598,599,5818,5818,6347,
            1936,4050,652,597,598,599,3591,269,264,265,
            5148,2030,35,3935,32,5508,4563,27,30,31,
            1654,1590,374,28,627,266,9900,9900,9900,3135,
            5795,591,9900,600,597,598,599,9900,600,597,
            598,599,278,264,265,3065,9900,309,9900,3464,
            4340,2413,9900,9900,6044,276,279,282,3249,2255,
            617,992,6964,9900,9900,285,9900,9900,645,5837,
            4375,4784,6180,3082,4303,9900,6282,6769,8265,9900,
            9900,2299,354,1199,356,9900,2299,9900,349,1121,
            9900,9900,9900,6757,918,9900,9900,7538,367,2602,
            5216,35,1703,32,4863,386,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,3153,3765,370,9900,
            6874,5216,35,1703,32,4863,9900,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,3153,3144,6356,
            455,3934,9900,3591,9900,396,9900,5148,387,9900,
            3157,9900,9900,9900,3155,9900,3168,9900,9900,3985,
            9900,379,2694,2340,384,9900,94,9900,9900,3144,
            600,597,598,599,9900,9900,3596,9900,9900,9900,
            9900,3157,9900,9900,9900,3155,3464,3981,5086,35,
            1703,32,4863,9900,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,2590,1133,442,9900,2299,9900,
            3479,716,2589,9900,2643,3654,9900,9900,9900,9900,
            367,5934,9900,9900,9900,9900,1563,9900,9900,9900,
            9900,9900,600,597,598,599,9900,262,9900,9900,
            9900,189,9900,9900,9900,9900,759,1598,4082,9900,
            9900,9900,6912,3018,213,9900,193,237,249,4745,
            700,9900,9900,9900,9900,202,236,246,247,248,
            250,651,699,5216,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,3153,
            201,9900,216,200,203,204,205,206,207,136,
            9900,9900,9900,9900,716,3624,35,1703,32,5364,
            4217,27,30,31,1654,1590,374,28,1433,9900,
            9900,3144,9900,4340,9900,9900,9900,3591,9900,9900,
            262,5148,9900,3157,189,4306,9900,3984,3988,759,
            1598,3038,9900,4340,1718,9900,3018,213,9900,378,
            237,249,4745,700,600,597,598,599,202,236,
            246,247,248,250,651,699,9900,9900,9900,6282,
            3464,652,597,598,599,2285,351,1710,356,3382,
            35,1703,32,5508,9900,27,30,31,1654,1590,
            374,28,9900,201,266,217,200,203,204,205,
            206,207,2299,9900,9900,214,600,597,598,599,
            9900,281,264,265,367,4739,5834,9900,9900,9900,
            9900,4340,5228,4077,35,1509,424,9900,9900,9900,
            9900,9900,5768,35,1703,32,5364,4563,27,30,
            31,1654,1590,374,28,9900,6136,6282,9900,9900,
            354,1199,356,3549,2299,9900,350,1121,541,600,
            597,598,599,9900,2118,9900,368,49,6022,4340,
            1235,5355,9900,9900,387,5016,4340,9900,2035,1349,
            600,597,598,599,9900,9900,9900,381,2694,2340,
            384,9900,9900,9900,1341,262,1924,600,597,598,
            599,9900,6282,354,1199,356,538,540,9900,349,
            1121,9900,9900,3464,1235,2649,443,8216,714,9900,
            997,91,35,1703,32,5364,4563,27,30,31,
            1654,1590,374,28,3056,9900,395,9900,9900,3467,
            9900,600,597,598,599,364,9900,9900,600,597,
            598,599,9900,444,445,446,815,3464,3216,3441,
            3466,9900,9900,9900,5016,9900,9900,9900,9900,9900,
            9900,341,345,780,9900,9900,91,35,1703,32,
            5364,4563,27,30,31,1654,1590,374,28,2919,
            9900,541,354,1199,356,2289,9900,3041,349,1121,
            9900,9900,9900,601,597,598,599,9900,9900,997,
            5086,35,1703,32,4863,3718,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,2590,1357,5934,538,
            540,9900,9900,1563,2589,9900,3626,354,1199,356,
            9900,9900,9900,349,1121,9900,9900,9900,447,450,
            341,345,780,9900,6084,9900,9900,9900,9900,9900,
            9900,9900,4114,193,9900,9900,842,9900,9900,5216,
            35,1703,32,4863,1545,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3153,9900,544,2055,35,
            1509,424,716,5086,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,3484,3144,262,9900,
            9900,9900,189,9900,9900,9900,9900,759,1598,3973,
            9900,9900,49,9900,3018,213,9900,9900,237,249,
            4745,700,4339,2035,5265,9900,202,236,246,247,
            248,250,651,699,9900,9900,9900,9900,9900,646,
            2055,35,1509,424,716,9900,9900,9900,1789,35,
            1703,32,5364,9900,27,30,31,1654,1590,374,
            28,201,9900,4036,200,203,204,205,206,207,
            262,9900,9900,9900,189,601,597,598,599,759,
            1598,9900,9900,9900,49,1337,3018,213,9900,9900,
            237,249,4745,700,9900,2035,2455,9900,202,236,
            246,247,248,250,651,699,9900,9900,9900,9900,
            9900,748,600,597,598,599,716,9900,9900,354,
            1199,356,9900,9900,9900,663,1121,9900,3464,9900,
            9900,9900,9900,201,9900,211,200,203,204,205,
            206,207,262,9900,9900,9900,189,9900,9900,77,
            9900,759,1598,9900,4077,9900,9900,9900,3018,213,
            3378,9900,237,249,4745,700,9900,9900,9900,9900,
            202,236,246,247,248,250,651,699,9900,9900,
            378,9900,9900,850,2044,35,1509,424,716,2827,
            6041,35,1703,32,5364,4563,27,30,31,1654,
            1590,374,28,9900,9900,201,2941,209,200,203,
            204,205,206,207,262,9900,9900,9900,189,9900,
            9900,9900,9900,759,1598,9900,9900,9900,49,3271,
            3018,213,9900,9900,237,249,4745,700,9900,2035,
            1226,9900,202,236,246,247,248,250,651,699,
            9900,9900,9900,9900,9900,952,2178,35,1509,424,
            716,354,1199,356,9900,9900,9900,349,1121,9900,
            2795,9900,9900,9900,9900,9900,9900,201,4119,643,
            200,203,204,205,206,207,262,9900,9900,9900,
            189,2189,35,1509,424,759,1598,9900,9900,9900,
            49,9900,3018,213,9900,9900,237,249,4745,700,
            9900,2035,47,9900,202,236,246,247,248,250,
            651,699,9900,9900,9900,9900,9900,1054,2044,35,
            1509,424,716,9900,9900,49,9900,9900,5958,9900,
            9900,9900,1287,878,9900,9900,2035,47,9900,201,
            9900,210,200,203,204,205,206,207,262,9900,
            9900,9900,189,2189,35,1509,424,759,1598,378,
            9900,9900,49,189,3018,213,9900,1011,237,249,
            4745,700,9900,2035,4158,221,202,236,246,247,
            248,250,651,699,9900,5370,9900,9900,9900,1156,
            2044,35,1509,424,716,9900,9900,49,9900,9900,
            9900,9900,9900,9900,2795,9900,9900,5737,2035,47,
            9900,201,4340,220,200,203,204,205,206,207,
            262,9900,9900,9900,189,9900,9900,77,9900,759,
            1598,9900,716,9900,49,9900,3018,213,378,1422,
            237,249,4745,700,9900,2035,47,9900,202,236,
            246,247,248,250,651,699,9900,9900,378,9900,
            9900,1258,189,223,1876,9900,716,2827,9900,9900,
            9900,9900,9900,9900,3130,9900,934,9900,9900,9900,
            9900,9900,9900,201,2941,4156,200,203,204,205,
            206,207,262,9900,9900,9900,189,2382,35,1509,
            424,759,1598,9900,9900,9900,9900,3016,3018,213,
            9900,9900,237,249,4745,700,9900,9900,9900,9900,
            202,236,246,247,248,250,651,699,9900,9900,
            9900,9900,9900,1360,4152,35,1509,424,716,9900,
            9900,49,9900,9900,9900,9900,9900,9900,3716,9900,
            9900,9900,2035,47,9900,201,9900,225,200,203,
            204,205,206,207,262,9900,9900,9900,189,2189,
            35,1509,424,759,1598,9900,9900,9900,49,1235,
            3018,213,9900,2690,237,249,4745,700,9900,2035,
            2150,9900,202,236,246,247,248,250,651,699,
            9900,9900,9900,9900,9900,1462,600,597,598,599,
            716,9900,9900,49,9900,9900,9900,9900,9900,9900,
            1947,9900,3464,9900,2035,3039,9900,201,9900,219,
            200,203,204,205,206,207,262,9900,9900,9900,
            189,478,9900,492,9900,759,1598,2066,9900,9900,
            9900,9900,3018,213,3375,3419,237,249,4745,700,
            273,296,9900,9900,202,236,246,247,248,250,
            651,699,9900,9900,652,597,598,599,9900,9900,
            9900,91,35,1703,32,5364,4563,27,30,31,
            1654,1590,374,28,9900,9900,9900,266,9900,201,
            9900,228,200,203,204,205,206,207,600,597,
            598,599,9900,9900,274,264,265,9900,9900,5086,
            35,1703,32,4863,5016,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3546,9900,9900,9900,9900,
            9900,9900,354,1199,356,9900,9900,9900,349,1121,
            9900,9900,9900,9900,5086,35,1703,32,4863,997,
            27,30,31,1654,1590,26,28,2249,296,23,
            25,50,2263,106,76,77,108,2513,2563,2543,
            2590,9900,9900,5086,35,1703,32,4863,3629,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,2543,2590,
            342,345,780,5635,35,553,9900,3643,9900,9900,
            9900,9900,2055,35,1509,424,271,296,9900,4157,
            9900,9900,9900,9900,716,2055,35,1509,424,9900,
            652,597,598,599,2164,35,3935,32,5364,4563,
            27,30,31,1654,1590,374,28,9900,9900,9900,
            378,9900,5834,266,189,9900,49,4340,9900,2827,
            1598,4093,597,598,599,9900,2802,2035,1400,49,
            269,264,265,9900,929,9900,2941,6148,2760,9900,
            2035,1204,9900,6282,9900,9900,6225,35,3935,32,
            5364,4563,27,30,31,1654,1590,374,28,2405,
            9900,600,597,598,599,354,1199,356,9900,9900,
            9900,349,1121,600,597,598,599,3969,276,279,
            282,3249,2602,9900,992,7048,3708,9900,9900,6148,
            5148,9900,6172,7940,8305,8466,9900,9900,6258,35,
            3935,32,5364,4563,27,30,31,1654,1590,374,
            28,9900,9900,600,597,598,599,354,1199,356,
            9900,9900,2200,349,1121,4093,597,598,599,3464,
            2574,9900,395,9900,2602,273,296,2055,35,1509,
            424,6148,6865,455,3934,9900,9900,9900,9900,652,
            597,598,599,9900,4203,3441,3466,652,597,598,
            599,2299,9900,9900,9900,562,563,567,9900,354,
            1199,356,266,368,9900,349,1121,9900,9900,9900,
            266,49,9900,9900,9900,9900,2602,9900,9900,274,
            264,265,2035,1349,7099,455,3934,284,264,265,
            8498,5086,35,1703,32,4863,9900,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,2513,2563,2543,3576,9900,9900,
            9900,9900,6210,35,1703,32,5364,8454,27,30,
            31,1654,1590,374,28,9900,6865,455,3934,5086,
            35,1703,32,4863,9900,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,2563,2543,3579,5086,35,1703,32,
            4863,9900,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,108,2513,
            2563,2543,3589,354,1199,356,2069,9900,9900,349,
            1121,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            3924,9900,9900,9900,9900,9900,9900,387,9900,9900,
            9900,9900,9900,600,597,598,599,9900,9900,9900,
            379,2694,2340,384,9900,9900,9900,9900,9900,4334,
            5086,35,1703,32,4863,3923,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,108,2513,2563,2543,3970,5086,35,1703,
            32,4863,9900,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,108,
            2513,2563,2543,3971,5086,35,1703,32,4863,9900,
            27,30,31,1654,1590,26,28,2249,296,23,
            25,50,2263,106,76,77,108,2513,2563,2543,
            3972,6297,35,1703,32,5364,8271,27,30,31,
            1654,1590,374,28,2044,35,1509,424,9900,9900,
            9900,2044,35,1509,424,9900,9900,401,5086,35,
            1703,32,4863,386,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            108,2513,2563,2543,4083,4471,9900,9900,49,2055,
            35,1509,424,9900,9900,49,2388,9900,9900,2035,
            47,4077,354,1199,356,9900,2035,47,349,1121,
            9900,9900,600,597,598,599,9900,9900,9900,1923,
            9900,9900,9900,9900,9900,9900,387,262,4082,9900,
            986,9900,9900,49,9900,9900,759,1643,9900,379,
            2694,2340,384,9900,2035,1688,9900,239,249,4745,
            700,9900,9900,9900,3596,9900,238,246,247,248,
            250,651,699,4891,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,637,76,77,240,242,244,815,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,251,
            241,243,5086,35,1703,32,4863,9900,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,106,76,77,108,2513,2563,3591,9900,9900,
            13,3053,7439,5086,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,108,2513,2563,3604,4369,
            35,1703,32,4863,9900,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,107,6327,35,1703,32,5364,8454,27,30,
            31,1654,1590,374,28,5467,35,1509,424,3882,
            2651,77,9900,9900,9900,9900,4077,3978,272,296,
            751,5148,9900,9900,9900,9900,9900,9900,9900,2671,
            9900,9900,652,597,598,599,4157,9900,9900,9900,
            9900,716,378,9900,600,597,598,599,9900,308,
            9900,2827,9900,9900,9900,266,652,597,598,599,
            3464,9900,9900,354,1199,356,9900,378,2941,349,
            1121,189,270,264,265,9900,2827,1598,9900,266,
            588,672,2047,2802,9900,9900,9900,387,9900,9900,
            9900,3290,2299,2941,9900,2760,287,264,265,9900,
            379,2694,2340,384,6757,9900,9900,9900,9900,9900,
            9900,9900,309,9900,9900,589,2811,9900,9900,9900,
            277,280,283,3249,9900,2771,992,9900,9900,9900,
            286,9900,9900,646,1654,35,1703,32,5508,9900,
            27,30,31,1654,1590,374,28,9900,2044,35,
            1509,424,600,597,598,599,9900,9900,9900,9900,
            9900,600,597,598,599,9900,9900,9900,4366,9900,
            9900,9900,1654,35,1703,32,5508,3464,27,30,
            31,1654,1590,374,28,9900,9900,9900,9900,9900,
            3444,9900,49,9900,5148,9900,9900,96,9900,600,
            597,598,599,2035,47,354,1199,356,9900,2299,
            9900,352,1121,9900,9900,5228,9900,600,597,598,
            599,368,9900,9900,5579,35,1509,424,3882,9900,
            9900,4157,9900,3464,3023,9900,716,272,296,9900,
            9900,9900,9900,354,1199,356,9900,2299,9900,350,
            1121,652,597,598,599,9900,9900,9900,9900,368,
            9900,9900,378,9900,2621,2299,189,9900,308,4077,
            9900,2827,1598,9900,266,9900,9900,368,2802,9900,
            9900,9900,9900,9900,9900,387,9900,9900,2941,9900,
            2760,270,264,265,9900,262,9900,9900,381,2694,
            2340,384,9900,9900,759,9900,9900,9900,5691,35,
            553,2916,9900,9900,9900,239,249,4745,700,9900,
            9900,272,296,9900,238,246,247,248,250,651,
            699,309,9900,9900,9900,652,597,598,599,277,
            280,283,3249,2718,9900,992,9900,9900,4077,286,
            9900,9900,646,240,242,244,815,9900,266,2958,
            9900,9900,9900,9900,9900,9900,9900,251,241,243,
            9900,9900,9900,9900,262,270,264,265,9900,9900,
            9900,9900,9900,759,9900,9900,600,597,598,599,
            9900,9900,9900,9900,239,249,4745,700,1997,9900,
            7439,9900,4334,238,246,247,248,250,651,699,
            3346,35,1703,32,5364,4563,27,30,31,1654,
            1590,374,28,277,280,283,3249,9900,9900,992,
            9900,9900,240,242,244,815,9900,601,597,598,
            599,9900,9900,9900,9900,9900,251,241,243,5086,
            35,1703,32,4863,9900,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,108,2513,3483,9900,2815,9900,2199,9900,7439,
            4077,354,1199,356,9900,9900,9900,349,1121,9900,
            6108,9900,9900,9900,9900,4077,9900,9900,6084,9900,
            9900,9900,9900,9900,9900,9900,262,9900,9900,9900,
            562,563,568,9900,9900,759,9900,9900,9900,9900,
            9900,378,592,9900,9900,9900,239,249,4745,700,
            2827,9900,9900,9900,9900,238,246,247,248,250,
            651,699,4956,35,1703,32,4863,2941,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,635,76,77,240,242,244,815,9900,9900,
            595,9900,9900,9900,9900,9900,9900,9900,251,241,
            243,5086,35,1703,32,4863,9900,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,108,3525,9900,9900,9900,9900,2449,
            9900,7439,5086,35,1703,32,4863,9900,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,106,76,77,108,3529,4303,35,1703,32,
            4863,9900,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,81,4435,
            35,1703,32,4863,9900,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,81,2524,9900,9900,9900,9900,4077,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,2252,
            9900,9900,9900,9900,4077,9900,9900,9900,9900,9900,
            9900,9900,9900,262,9900,9900,9900,9900,709,9900,
            9900,9900,759,9900,9900,2044,35,1509,424,4399,
            262,9900,9900,239,249,4745,700,9900,9900,759,
            9900,710,238,246,247,248,250,651,699,6164,
            239,249,4745,700,9900,9900,9900,9900,9900,238,
            246,247,248,250,651,699,9900,9900,9900,49,
            2912,240,242,244,815,4077,652,597,598,599,
            2035,47,9900,9900,9900,580,241,243,240,242,
            244,815,9900,9900,2044,35,1509,424,2768,266,
            9900,262,252,241,243,9900,9900,9900,9900,9900,
            759,3027,9900,9900,9900,77,269,264,265,9900,
            4077,239,249,4745,700,652,597,598,599,9900,
            238,246,247,248,250,651,699,3009,49,77,
            9900,9900,4077,9900,4077,9900,378,9900,266,2035,
            47,9900,9900,9900,9900,2827,9900,9900,9900,240,
            242,244,815,9900,9900,647,264,265,262,9900,
            378,7623,2941,671,241,243,9900,759,9900,2827,
            3137,9900,9900,2865,9900,9900,9900,9900,239,249,
            4745,700,9900,9900,9900,3297,2941,238,246,247,
            248,250,651,699,3106,9900,9900,9900,9900,4077,
            652,597,598,599,9900,9900,9900,9900,9900,3360,
            9900,9900,690,680,9900,9900,240,242,244,815,
            9900,9900,9900,266,9900,262,9900,9900,9900,9900,
            670,241,243,9900,759,9900,9900,9900,9900,9900,
            270,264,265,9900,9900,239,249,4745,700,9900,
            693,9900,9900,9900,238,246,247,248,250,651,
            699,5021,35,1703,32,4863,9900,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            86,76,77,240,242,244,815,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,669,241,243,
            5086,35,1703,32,4863,9900,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,85,5086,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,83,5086,35,1703,32,
            4863,9900,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,82,5086,
            35,1703,32,4863,9900,27,30,31,1654,1590,
            26,28,2249,296,23,25,50,2263,106,76,
            77,81,5086,35,1703,32,4863,9900,27,30,
            31,1654,1590,26,28,2249,296,23,25,50,
            2263,106,76,77,80,5086,35,1703,32,4863,
            9900,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,106,76,77,79,5086,35,
            1703,32,4863,9900,27,30,31,1654,1590,26,
            28,2249,296,23,25,50,2263,106,76,77,
            78,5086,2402,1703,2927,4863,9900,27,30,31,
            1654,1590,26,28,2249,296,23,25,50,2263,
            106,76,77,84,3203,9900,9900,9900,9900,4077,
            2962,9900,9900,9900,9900,9900,9900,9900,9900,77,
            9900,3300,9900,77,4077,9900,4077,9900,4077,9900,
            9900,9900,9900,9900,9900,262,9900,652,597,598,
            599,9900,9900,9900,759,9900,9900,9900,9900,9900,
            378,9900,262,9900,378,239,249,4745,700,2827,
            266,759,9900,2827,238,246,247,248,250,651,
            699,9900,239,249,4745,700,2941,278,264,265,
            2941,238,246,247,248,250,651,699,9900,9900,
            9900,9900,9900,240,242,244,815,9900,9900,3731,
            9900,9900,9900,545,9900,9900,9900,581,241,243,
            240,242,244,815,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,340,241,243,4566,35,1703,
            32,4863,9900,27,30,31,1654,1590,26,28,
            2249,296,23,25,50,2263,106,76,77,104,
            5086,35,1703,32,4863,9900,27,30,31,1654,
            1590,26,28,2249,296,23,25,50,2263,106,
            76,77,110,5086,35,1703,32,4863,9900,27,
            30,31,1654,1590,26,28,2249,296,23,25,
            50,2263,106,76,77,109,5086,35,1703,32,
            4863,9900,27,30,31,1654,1590,26,28,2249,
            296,23,25,50,2263,106,76,77,105,3397,
            9900,9900,9900,9900,4077,5151,35,1703,32,4863,
            9900,27,30,31,1654,1590,26,28,2249,296,
            23,25,50,2263,3864,76,77,9900,9900,9900,
            262,9900,9900,9900,9900,9900,9900,9900,9900,759,
            9900,9900
        };
    };

    public interface BaseAction1 {
        public final static char baseAction1[] = {
            9900,9900,9900,9900,9900,9900,9900,9900,239,249,
            4745,700,9900,9900,9900,9900,9900,238,246,247,
            248,250,651,699,6270,35,1703,32,5364,4411,
            27,30,31,1654,1590,374,28,1984,9900,9900,
            9900,6022,4340,9900,9900,9900,240,242,244,815,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            535,241,243,9900,9900,9900,9900,9900,262,9900,
            9900,9900,439,6086,9900,9900,9900,5148,4340,6086,
            9900,77,9900,5148,4340,9900,4077,9900,2649,443,
            8216,714,9900,9900,9900,351,1710,356,9900,9900,
            600,597,598,599,6282,6118,600,597,598,599,
            6282,9900,378,3059,9900,9900,3464,9900,9900,9900,
            9900,2827,3464,9900,9900,9900,444,445,446,815,
            9900,9900,652,597,598,599,9900,9900,2941,9900,
            652,597,598,599,4157,9900,9900,9900,2299,716,
            9900,9900,9900,9900,2299,266,9900,9900,9900,9900,
            367,543,9900,266,9900,9900,367,9900,9900,9900,
            3041,4157,269,264,265,378,716,9900,9900,189,
            281,264,265,9900,2827,1598,9900,9900,9900,9900,
            9900,2802,6930,395,9900,9900,9900,9900,4819,395,
            9900,2941,378,2760,77,9900,189,9900,9900,4077,
            3591,2827,1598,1341,5148,3782,3441,3466,2802,9900,
            9900,3782,3441,3466,2920,9900,9900,7623,2941,9900,
            2760,447,449,9900,9900,378,9900,600,597,598,
            599,4157,9900,9900,2827,9900,716,9900,9900,9900,
            9900,2988,77,3464,9900,9900,9900,878,9900,9900,
            9900,2941,3591,9900,1943,9900,5148,4904,9900,9900,
            9900,9900,378,9900,3156,9900,189,9900,690,680,
            9900,2827,1598,378,596,2299,9900,189,2802,600,
            597,598,599,9900,9900,9900,9900,367,2941,221,
            2760,652,597,598,599,3464,3253,9900,9900,5370,
            9900,9900,9900,5928,9900,77,692,9900,878,9900,
            878,3828,77,9900,266,9900,9900,878,9900,6930,
            9900,9900,9900,652,597,598,599,2299,9900,9900,
            9900,284,264,265,3575,9900,378,9900,189,367,
            189,679,7489,378,9900,9900,266,189,9900,9900,
            3018,213,221,9900,9900,9900,9900,9900,9900,221,
            9900,9900,5370,569,264,265,9900,9900,9900,5370,
            9900,4819,9900,9900,9900,9900,9900,4118,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,229,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            4120,9900,9900,9900,9900,9900,9900,4200,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,9900,5518,230,9900,0,1,263,
            747,0,537,7422,0,1,263,0,39,10602,
            0,39,10601,697,0,39,9915,0,39,9914,
            0,1,860,0,849,1,0,39,1,10602,
            0,39,1,10601,0,39,1,9915,0,39,
            1,9914,0,1,5597,0,1,818,0,263,
            253,0,1,1198,0,1,1227,0,1,1358,
            0,10168,257,0,10167,257,0,1198,257,0,
            1227,257,0,1358,257,0,1439,257,0,10273,
            257,0,10272,257,0,10195,257,0,10194,257,
            0,10193,257,0,10192,257,0,10191,257,0,
            10190,257,0,10189,257,0,10188,257,0,668,
            698,0,10168,258,0,10167,258,0,1198,258,
            0,1227,258,0,1358,258,0,1439,258,0,
            10273,258,0,10272,258,0,10195,258,0,10194,
            258,0,10193,258,0,10192,258,0,10191,258,
            0,10190,258,0,10189,258,0,10188,258,0,
            10168,259,0,10167,259,0,1198,259,0,1227,
            259,0,1358,259,0,1439,259,0,10273,259,
            0,10272,259,0,10195,259,0,10194,259,0,
            10193,259,0,10192,259,0,10191,259,0,10190,
            259,0,10189,259,0,10188,259,0,1358,430,
            0,1227,430,0,1198,430,0,318,430,0,
            10168,260,0,10167,260,0,1198,260,0,1227,
            260,0,1358,260,0,1439,260,0,10273,260,
            0,10272,260,0,10195,260,0,10194,260,0,
            10193,260,0,10192,260,0,10191,260,0,10190,
            260,0,10189,260,0,10188,260,0,318,323,
            0,10168,261,0,10167,261,0,1198,261,0,
            1227,261,0,1358,261,0,1439,261,0,10273,
            261,0,10272,261,0,10195,261,0,10194,261,
            0,10193,261,0,10192,261,0,10191,261,0,
            10190,261,0,10189,261,0,10188,261,0,1495,
            423,0,39,10601,0,10602,48,0,10601,48,
            0,9915,48,0,9914,48,0,10168,650,0,
            10167,650,0,1198,650,0,1227,650,0,1358,
            650,0,1439,650,0,10273,650,0,10272,650,
            0,10195,650,0,10194,650,0,10193,650,0,
            10192,650,0,10191,650,0,10190,650,0,10189,
            650,0,10188,650,0,10168,275,0,10167,275,
            0,1198,275,0,1227,275,0,1358,275,0,
            1439,275,0,10273,275,0,10272,275,0,10195,
            275,0,10194,275,0,10193,275,0,10192,275,
            0,10191,275,0,10190,275,0,10189,275,0,
            10188,275,0,10575,275,0,10574,275,0,10573,
            275,0,10207,275,0,10206,275,0,10205,275,
            0,10204,275,0,10203,275,0,10202,275,0,
            10201,275,0,10200,275,0,10199,275,0,10198,
            275,0,10197,275,0,10567,275,0,10566,275,
            0,39,275,10602,0,39,275,10601,696,0,
            39,275,9915,0,39,275,9914,0,9938,275,
            0,1,366,0,38,818,0,38,10602,0,
            38,10601,0,38,9915,0,38,9914,0,490,
            2036,0,476,2136,0,1495,29,0,9912,1,
            0,2193,353,0,1358,660,0,1227,660,0,
            1198,660,0,664,660,0,664,659,0,9963,
            75,0,9962,75,0,767,75,0,1364,75,
            0,1707,75,0,1839,75,0,1,662,0,
            1,480,0,494,949,0,493,1306,0,35,
            33,0,47,37,0,2056,190,0,6299,126,
            0,9912,419,0,9911,419,0,1358,662,0,
            1227,662,0,1198,662,0,1198,695,0,1227,
            695,0,1358,695,0,10581,695,0,537,3057,
            0,9938,1,263,0,39,1,263,0,263,
            452,0,1,1653,0,1,10575,0,1,10574,
            0,1,10573,0,1,10207,0,1,10206,0,
            1,10205,0,1,10204,0,1,10203,0,1,
            10202,0,1,10201,0,1,10200,0,1,10199,
            0,1,10198,0,1,10197,0,1,10567,0,
            1,10566,0,10602,37,0,10601,37,0,9915,
            37,0,9914,37,0,43,9936,0,43,37,
            0,2601,91,0,32,34,0,9908,1,0,
            39,818,0,1358,366,0,1227,366,0,1198,
            366,0,39,275,10601,0,1,1209,0,1,
            2586,0,263,254,0,10168,691,0,10167,691,
            0,1198,691,0,1227,691,0,1358,691,0,
            1439,691,0,10273,691,0,10272,691,0,10195,
            691,0,10194,691,0,10193,691,0,10192,691,
            0,10191,691,0,10190,691,0,10189,691,0,
            10188,691,0,1198,694,0,1227,694,0,1358,
            694,0,10581,694,0,9910,441,0,9909,441,
            0,263,451,0,1,6613,0,1,7282,0,
            1,7711,0,1,7750,0,1,7773,0,1,
            7796,0,1,7819,0,1,7842,0,1,7865,
            0,1,7888,0,1,7911,0,1,9922,0,
            1,9921,0,1,9920,0,1,9919,0,1,
            9918,0,1,9917,0,1,9916,0,1,2050,
            0,1,2053,0,1,2100,0,1,2147,0,
            1,2205,0,1,2658,0,39,1,0,9912,
            649,419,0,9911,649,419,0,1,263,3817,
            0,9909,263,0,3818,263,0,9906,1,0,
            9905,1,0,271,1220,0,424,32,0,423,
            29,0,1358,481,0,1227,481,0,1198,481,
            0,9938,481,0,39,481,0,366,481,0,
            6299,128,0,6299,127,0,1198,570,0,1227,
            570,0,1358,570,0,1198,571,0,1227,571,
            0,1358,571,0,1198,572,0,1227,572,0,
            1358,572,0,1198,573,0,1227,573,0,1358,
            573,0,1198,574,0,1227,574,0,1358,574,
            0,275,10602,0,275,10601,0,275,9915,0,
            275,9914,0,9936,45,0,37,45,0,9912,
            638,419,0,9911,638,419,0,9912,636,419,
            0,9911,636,419,0,9912,87,419,0,9911,
            87,419,0,1,92,0,4000,263,0,10,
            12,0,9938,1,0,648,637,0,1439,371,
            0,10273,371,0,10272,371,0,2401,100,0,
            8,10,12,0,4101,227,0,10602,2,37,
            0,10601,2,37,0,9915,2,37,0,9914,
            2,37,0,10602,36,0,10601,36,0,9915,
            36,0,9914,36,0,1358,657,0,1227,657,
            0,1198,657,0,1358,656,0,1227,656,0,
            1198,656,0,600,601,0,5078,103,0,4050,
            99,0,1358,95,0,1227,95,0,1198,95,
            0,9938,95,0,39,95,0,366,95,0,
            9912,649,638,419,0,649,638,0,35,73,
            0,4155,419,0,1358,657,658,0,1227,657,
            658,0,1198,657,658,0,657,658,0,313,
            4350,0,8,12,0,218,5723,0
        };
    };

    public final static char baseAction[] = new char[BaseAction0.baseAction0.length + BaseAction1.baseAction1.length];
    {
        int index = 0;
        System.arraycopy(BaseAction0.baseAction0, 0, baseAction, index, BaseAction0.baseAction0.length);
        index += BaseAction0.baseAction0.length;
        System.arraycopy(BaseAction1.baseAction1, 0, baseAction, index, BaseAction1.baseAction1.length);
    };
    public final int baseAction(int index) { return baseAction[index]; }
    public final static char lhs[] = baseAction;
    public final int lhs(int index) { return lhs[index]; };

    public interface TermCheck {
        public final static char termCheck[] = {0,
            0,1,2,3,4,5,6,7,8,9,
            10,11,12,13,14,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,32,33,34,35,36,37,38,39,
            40,41,42,43,44,45,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,65,66,0,68,69,
            70,71,72,73,74,75,0,0,78,79,
            3,14,82,83,84,85,86,87,88,89,
            0,1,2,3,4,5,6,7,8,9,
            10,11,102,103,104,105,106,107,108,109,
            110,111,112,113,114,115,116,117,118,119,
            120,121,122,123,124,125,126,127,128,129,
            0,1,65,0,134,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,37,38,39,40,41,42,43,44,
            45,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            65,66,0,68,69,70,73,0,1,74,
            75,76,77,0,12,80,81,82,83,12,
            85,0,87,0,0,90,91,92,93,94,
            95,0,97,98,99,100,101,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,46,47,48,49,50,51,52,
            53,54,55,56,57,58,59,60,61,62,
            63,64,65,66,73,68,69,70,85,78,
            86,74,75,76,77,113,114,80,81,82,
            83,0,85,0,87,0,105,90,91,92,
            93,94,95,112,97,98,99,100,101,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,14,15,16,17,18,19,20,
            21,22,23,24,25,26,27,28,29,30,
            31,32,33,34,35,36,37,38,39,40,
            41,42,43,44,45,46,47,48,49,50,
            51,52,53,54,55,56,57,58,59,60,
            61,62,63,64,65,66,0,68,69,70,
            0,88,89,74,75,76,77,0,0,80,
            81,82,83,5,85,0,87,106,107,90,
            91,92,93,94,95,110,97,98,99,100,
            101,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,65,66,0,68,
            69,70,0,88,89,74,75,76,77,0,
            0,80,81,82,83,6,85,7,8,9,
            0,90,91,92,93,94,95,0,97,98,
            99,100,101,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,14,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,46,
            47,48,49,50,51,52,53,54,55,56,
            57,58,59,60,61,62,63,64,65,66,
            0,68,69,70,106,107,0,74,75,76,
            77,5,0,80,81,82,83,0,85,7,
            8,9,5,90,91,92,93,94,95,109,
            97,98,99,100,101,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,37,38,39,40,41,42,43,44,
            45,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            65,66,0,68,69,70,106,107,0,74,
            75,76,77,5,0,80,81,82,83,0,
            85,7,8,9,5,90,91,92,93,94,
            95,0,97,98,99,100,101,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,46,47,48,49,50,51,52,
            53,54,55,56,57,58,59,60,61,62,
            63,64,65,66,73,68,69,70,106,107,
            0,74,75,76,77,5,0,80,81,82,
            83,0,85,7,8,9,5,90,91,92,
            93,94,95,0,97,98,99,100,101,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,14,15,16,17,18,19,20,
            21,22,23,24,25,26,27,28,29,30,
            31,32,33,34,35,36,37,38,39,40,
            41,42,43,44,45,46,47,48,49,50,
            51,52,53,54,55,56,57,58,59,60,
            61,62,63,64,65,66,73,68,69,70,
            0,78,0,74,75,76,77,0,0,80,
            81,82,83,6,85,7,8,9,0,90,
            91,92,93,94,95,0,97,98,99,100,
            101,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,65,66,0,68,
            69,70,84,78,0,74,75,76,77,5,
            0,80,81,82,83,0,85,7,8,9,
            5,90,91,92,93,94,95,0,97,98,
            99,100,101,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,14,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,46,
            47,48,49,50,51,52,53,54,55,56,
            57,58,59,60,61,62,63,64,65,66,
            73,68,69,70,0,0,108,74,75,76,
            77,6,0,80,81,82,83,13,85,7,
            8,9,0,90,91,92,93,94,95,0,
            97,98,99,100,101,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,37,38,39,40,41,42,43,44,
            45,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            65,66,73,68,69,70,84,0,0,74,
            75,76,77,5,0,80,81,82,83,0,
            85,7,8,9,5,90,91,92,93,94,
            95,0,97,98,99,100,101,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,46,47,48,49,50,51,52,
            53,54,55,56,57,58,59,60,61,62,
            63,64,65,66,0,68,69,70,0,5,
            0,74,75,76,77,84,0,80,81,82,
            83,13,85,7,8,9,0,90,91,92,
            93,94,95,23,97,98,99,100,101,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,14,15,16,17,18,19,20,
            21,22,23,24,25,26,27,28,29,30,
            31,32,33,34,35,36,37,38,39,40,
            41,42,43,44,45,46,47,48,49,50,
            51,52,53,54,55,56,57,58,59,60,
            61,62,63,64,65,66,0,68,69,70,
            0,0,0,74,75,76,77,5,0,80,
            81,82,83,0,85,7,8,9,5,90,
            91,92,93,94,95,109,97,98,99,100,
            101,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,65,66,0,68,
            69,70,0,5,0,74,75,76,77,108,
            110,80,81,82,83,0,85,0,14,0,
            0,90,91,92,93,94,95,0,97,98,
            99,100,101,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,14,46,32,
            33,34,0,51,52,53,54,55,56,7,
            8,9,47,48,0,32,33,34,35,36,
            72,38,39,40,41,42,43,44,45,75,
            47,48,49,50,32,33,34,35,36,0,
            38,39,40,41,42,43,44,45,65,0,
            1,2,3,4,71,72,73,0,75,10,
            11,78,79,6,7,8,9,84,85,86,
            87,88,89,0,1,2,3,4,5,6,
            7,8,9,10,11,102,103,104,105,106,
            107,108,109,110,111,112,113,114,115,116,
            117,118,119,120,121,122,123,124,125,126,
            127,128,129,136,0,0,0,134,0,1,
            2,3,4,5,6,7,8,9,10,11,
            12,13,14,0,0,0,0,0,0,1,
            2,3,4,0,7,8,9,12,10,11,
            32,33,34,35,36,12,38,39,40,41,
            42,43,44,45,0,47,48,49,50,32,
            33,34,35,36,135,38,39,40,41,42,
            43,44,45,65,0,1,2,3,4,71,
            72,73,0,75,10,0,78,79,84,7,
            8,9,84,85,86,87,88,89,0,1,
            2,3,4,5,6,7,8,9,10,11,
            102,103,104,105,106,107,108,109,110,111,
            112,113,114,115,116,117,118,119,120,121,
            122,123,124,125,126,127,128,129,113,114,
            86,67,134,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,72,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,46,
            47,48,49,50,51,52,53,54,55,56,
            57,58,59,60,61,62,63,64,0,66,
            0,68,69,70,6,5,0,74,0,1,
            2,3,4,5,6,7,8,9,10,11,
            12,13,0,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            32,33,34,35,36,37,38,39,40,41,
            42,43,44,45,46,47,48,49,50,51,
            52,53,54,55,56,57,58,59,60,61,
            62,63,64,67,66,0,68,69,70,0,
            5,0,74,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,14,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,0,1,2,3,4,65,66,
            67,68,69,70,0,1,2,3,4,76,
            77,86,0,80,81,0,0,84,0,0,
            87,90,7,8,9,7,8,9,0,96,
            15,16,17,18,19,20,21,22,0,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,33,38,39,40,41,42,43,44,
            45,0,46,84,131,132,133,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,0,1,2,
            3,4,65,66,67,68,69,70,0,1,
            2,3,4,76,77,0,108,80,81,0,
            0,84,0,0,87,0,7,8,9,7,
            8,9,0,96,15,16,17,18,19,20,
            21,22,0,24,25,26,27,28,29,30,
            31,32,33,34,35,36,0,38,39,40,
            41,42,43,44,45,23,46,84,131,132,
            133,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,0,76,104,
            0,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,65,66,67,68,
            69,70,0,1,2,3,4,76,77,0,
            0,80,81,32,33,34,35,36,87,38,
            39,40,41,42,43,44,45,96,0,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,0,67,0,65,0,1,2,
            3,4,71,72,7,8,9,12,13,12,
            79,0,1,2,3,4,135,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,84,67,72,0,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,65,66,67,68,69,70,0,1,
            2,3,4,76,77,0,0,80,81,32,
            33,34,35,36,0,38,39,40,41,42,
            43,44,45,96,0,1,2,3,4,5,
            6,7,8,9,10,11,12,13,32,33,
            34,0,65,67,0,1,2,3,4,72,
            6,46,75,0,10,11,79,0,1,2,
            3,4,135,0,1,2,3,4,5,6,
            7,8,9,10,11,12,13,14,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,32,33,34,35,36,
            37,38,39,40,41,42,43,44,45,0,
            0,67,71,0,5,0,1,2,3,4,
            7,8,9,0,67,10,73,0,65,66,
            67,68,69,70,71,0,0,14,0,76,
            77,5,0,80,81,32,33,34,35,36,
            14,38,39,40,41,42,43,44,45,96,
            0,1,2,3,4,5,6,7,8,9,
            10,11,12,13,14,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,32,33,34,35,36,37,38,39,
            40,41,42,43,44,45,71,0,72,73,
            0,0,5,0,78,79,78,7,8,9,
            0,1,2,3,4,65,66,67,68,69,
            70,0,105,0,111,0,76,77,5,112,
            80,81,32,33,34,35,36,87,38,39,
            40,41,42,43,44,45,96,0,1,2,
            3,4,5,6,7,8,9,10,11,12,
            13,14,15,16,17,18,19,20,21,22,
            23,24,25,26,27,28,29,30,31,32,
            33,34,35,36,37,38,39,40,41,42,
            43,44,45,72,0,72,73,0,0,5,
            0,78,0,78,7,8,9,7,8,9,
            109,0,65,66,67,68,69,70,115,116,
            0,0,0,76,77,14,5,80,81,32,
            33,34,35,36,87,38,39,40,41,42,
            43,44,45,96,0,1,2,3,4,5,
            6,7,8,9,10,11,12,13,14,15,
            16,17,18,19,20,21,22,23,24,25,
            26,27,28,29,30,31,32,33,34,35,
            36,37,38,39,40,41,42,43,44,45,
            79,71,0,72,0,73,0,0,78,88,
            89,7,8,9,0,1,2,3,4,65,
            66,67,68,69,70,0,0,0,0,0,
            76,77,102,103,80,81,32,33,34,35,
            36,87,38,39,40,41,42,43,44,45,
            96,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,32,33,34,35,36,37,38,
            39,40,41,42,43,44,45,0,0,1,
            71,0,0,78,7,8,9,105,7,8,
            9,84,0,84,112,0,65,66,67,68,
            69,70,0,0,0,0,14,76,77,5,
            32,80,81,32,33,34,35,36,14,38,
            39,40,41,42,43,44,45,96,0,1,
            2,3,4,5,6,7,8,9,10,11,
            12,13,14,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            32,33,34,35,36,37,38,39,40,41,
            42,43,44,45,71,0,72,73,0,87,
            0,0,78,79,0,7,8,9,13,0,
            88,89,110,65,66,67,68,69,70,0,
            105,0,0,14,76,77,5,112,80,81,
            32,33,34,35,36,14,38,39,40,41,
            42,43,44,45,96,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,32,33,34,
            35,36,37,38,39,40,41,42,43,44,
            45,72,0,72,0,0,87,5,0,5,
            79,0,7,8,9,0,84,0,104,108,
            65,66,67,68,69,70,0,0,0,12,
            0,76,77,5,0,80,81,32,33,34,
            35,36,14,38,39,40,41,42,43,44,
            45,96,0,1,2,3,4,5,6,7,
            8,9,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,32,33,34,35,36,37,
            38,39,40,41,42,43,44,45,71,88,
            89,71,0,88,89,71,0,79,0,7,
            8,9,104,5,88,89,10,65,66,67,
            68,69,70,0,0,0,0,0,76,77,
            113,114,80,81,32,33,34,35,36,0,
            38,39,40,41,42,43,44,45,96,0,
            1,2,3,4,5,6,7,8,9,10,
            11,12,13,14,15,16,17,18,19,20,
            21,22,23,24,25,26,27,28,29,30,
            31,32,33,34,35,36,37,38,39,40,
            41,42,43,44,45,0,1,2,3,4,
            5,6,7,8,9,10,11,12,13,84,
            71,88,89,0,65,66,67,68,69,70,
            0,0,0,0,0,76,77,14,5,80,
            81,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,96,0,1,2,3,
            4,5,6,7,8,9,10,11,12,13,
            14,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,32,33,
            34,35,36,37,38,39,40,41,42,43,
            44,45,79,0,0,1,0,84,5,6,
            7,8,9,72,0,12,13,14,14,88,
            89,65,66,67,68,69,70,0,14,0,
            0,0,76,77,5,5,80,81,32,33,
            34,109,0,0,1,2,3,4,5,6,
            46,0,96,10,11,12,13,14,15,16,
            17,18,19,20,21,22,23,24,25,26,
            27,28,29,30,31,72,73,0,35,65,
            37,78,79,79,0,1,2,3,4,46,
            47,48,49,50,51,52,53,54,55,56,
            57,58,59,60,61,62,63,64,0,1,
            2,3,4,0,6,7,8,9,0,1,
            2,3,4,5,6,82,83,0,10,11,
            12,13,0,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            0,67,110,0,111,37,6,7,8,9,
            47,48,12,13,46,47,48,49,50,51,
            52,53,54,55,56,57,58,59,60,61,
            62,63,64,0,1,2,3,4,5,6,
            0,0,74,10,11,0,78,0,71,67,
            82,83,0,1,2,3,4,5,6,14,
            0,14,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,0,1,2,3,4,37,
            6,7,8,9,0,0,12,13,46,47,
            48,49,50,51,52,53,54,55,56,57,
            58,59,60,61,62,63,64,0,1,2,
            3,4,75,6,7,8,9,75,0,12,
            13,71,87,130,82,83,0,1,2,3,
            4,5,6,0,0,0,10,11,12,13,
            14,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,0,0,
            130,35,78,37,0,1,2,3,4,84,
            6,0,46,47,48,49,50,51,52,53,
            54,55,56,57,58,59,60,61,62,63,
            64,73,0,1,2,3,4,5,6,0,
            74,67,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,0,1,2,3,4,37,
            6,7,8,9,0,0,78,111,46,47,
            48,49,50,51,52,53,54,55,56,57,
            58,59,60,61,62,63,64,86,0,1,
            2,3,4,5,6,0,74,75,10,11,
            0,1,2,3,4,5,6,78,0,87,
            10,11,12,13,6,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,1,2,3,4,37,6,7,
            8,9,47,48,12,13,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            0,6,0,0,74,0,1,2,3,4,
            5,6,82,83,0,10,11,12,13,14,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,0,1,2,
            3,4,37,6,7,8,9,0,0,12,
            13,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            23,0,1,2,3,4,5,6,78,74,
            75,10,11,12,13,71,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,0,1,2,3,4,37,0,
            7,8,9,66,67,0,0,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,0,1,2,3,
            4,32,33,34,0,74,0,1,2,3,
            4,5,6,82,83,0,10,11,12,13,
            0,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,0,1,
            2,3,4,37,6,0,71,71,10,11,
            0,0,46,47,48,49,50,51,52,53,
            54,55,56,57,58,59,60,61,62,63,
            64,0,1,2,3,4,0,73,82,83,
            74,0,1,2,3,4,5,6,82,83,
            14,10,11,12,13,0,15,16,17,18,
            19,20,21,22,23,24,25,26,27,28,
            29,30,31,0,1,2,3,4,37,6,
            0,0,72,10,11,0,5,46,47,48,
            49,50,51,52,53,54,55,56,57,58,
            59,60,61,62,63,64,131,132,133,0,
            130,75,0,82,83,74,0,1,2,3,
            4,5,6,82,83,13,10,11,12,13,
            14,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,0,1,
            2,3,4,37,6,7,8,9,73,0,
            0,0,46,47,48,49,50,51,52,53,
            54,55,56,57,58,59,60,61,62,63,
            64,72,0,1,2,3,4,5,6,0,
            74,75,10,11,12,13,14,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,0,67,0,0,0,37,
            0,5,5,0,1,2,3,4,46,47,
            48,49,50,51,52,53,54,55,56,57,
            58,59,60,61,62,63,64,86,0,1,
            2,3,4,5,6,66,0,0,10,11,
            12,13,14,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            0,1,2,3,4,37,6,7,8,9,
            67,73,72,111,46,47,48,49,50,51,
            52,53,54,55,56,57,58,59,60,61,
            62,63,64,0,0,1,2,3,4,5,
            6,0,0,75,10,11,12,13,14,15,
            16,17,18,19,20,21,22,23,24,25,
            26,27,28,29,30,31,0,67,0,0,
            0,37,0,1,2,3,4,7,8,9,
            46,47,48,49,50,51,52,53,54,55,
            56,57,58,59,60,61,62,63,64,0,
            0,1,2,3,4,5,6,130,0,0,
            10,11,12,13,6,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,1,2,3,4,37,6,67,
            71,71,10,11,0,111,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,0,74,74,10,11,12,13,71,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,88,89,67,
            0,0,37,0,1,2,3,4,0,0,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,72,0,0,
            10,11,12,13,0,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,1,2,3,4,37,67,0,
            67,0,1,2,3,4,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,0,0,74,10,11,12,13,6,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,88,89,67,
            0,0,37,0,1,2,3,4,67,36,
            71,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,0,0,74,
            10,11,12,13,6,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,0,0,0,0,37,0,6,
            67,71,6,5,0,0,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,102,103,74,10,11,12,13,71,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,0,0,0,
            0,67,37,0,71,6,71,71,0,6,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,102,103,36,
            10,11,12,13,46,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,0,0,67,0,37,0,5,
            71,71,0,5,0,0,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,102,103,0,10,11,12,13,46,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,0,0,0,
            67,0,37,5,131,132,133,0,0,0,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,0,0,0,
            10,11,12,13,0,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,88,89,0,0,0,37,0,0,
            0,0,0,0,0,0,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,0,0,0,10,11,12,13,0,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,0,0,0,
            86,0,37,0,0,0,0,0,0,0,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,0,0,0,
            10,11,12,13,0,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,0,0,86,0,37,0,0,
            0,0,0,0,0,0,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,0,0,0,10,11,12,13,0,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,0,84,0,
            0,0,37,0,0,0,0,0,0,0,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,5,6,0,0,0,
            10,11,12,13,0,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,0,0,0,86,0,37,0,0,
            0,0,0,0,0,0,46,47,48,49,
            50,51,52,53,54,55,56,57,58,59,
            60,61,62,63,64,0,1,2,3,4,
            5,6,0,0,0,10,11,12,13,0,
            15,16,17,18,19,20,21,22,23,24,
            25,26,27,28,29,30,31,23,84,0,
            0,0,37,0,0,0,0,0,0,0,
            0,46,47,48,49,50,51,52,53,54,
            55,56,57,58,59,60,61,62,63,64,
            0,1,2,3,4,0,6,7,8,9,
            66,67,0,0,0,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,32,33,34,35,36,37,38,39,
            40,41,42,43,44,45,0,0,0,0,
            0,0,0,84,0,0,0,1,2,3,
            4,86,6,7,8,9,66,0,68,69,
            70,15,16,17,18,19,20,21,22,23,
            24,25,26,27,28,29,30,31,32,33,
            34,35,36,37,38,39,40,41,42,43,
            44,45,0,0,0,0,0,0,0,0,
            0,0,0,1,2,3,4,0,6,7,
            8,9,66,0,68,69,70,15,16,17,
            18,19,20,21,22,23,24,25,26,27,
            28,29,30,31,32,33,34,35,36,37,
            38,39,40,41,42,43,44,45,0,0,
            0,0,0,0,0,0,0,0,0,1,
            2,3,4,0,6,7,8,9,66,0,
            68,69,70,15,16,17,18,19,20,21,
            22,23,24,25,26,27,28,29,30,31,
            32,33,34,35,36,37,38,39,40,41,
            42,43,44,45,0,0,0,1,2,3,
            4,0,0,0,0,1,2,3,4,0,
            14,7,8,9,66,0,68,69,70,15,
            16,17,18,19,20,21,22,23,24,25,
            26,27,28,29,30,31,32,33,34,35,
            36,0,38,39,40,41,42,43,44,45,
            0,0,0,0,0,14,0,0,0,0,
            0,1,2,3,4,0,14,7,8,9,
            66,75,68,69,70,15,16,17,18,19,
            20,21,22,23,24,25,26,27,28,29,
            30,31,32,33,34,35,36,0,38,39,
            40,41,42,43,44,45,0,0,1,0,
            0,5,0,0,73,0,10,65,12,13,
            79,14,0,14,14,73,66,0,68,69,
            70,0,0,0,0,0,86,0,1,2,
            3,4,5,6,7,8,9,10,11,14,
            0,14,0,47,48,49,50,0,0,0,
            0,0,0,57,0,115,116,117,118,119,
            120,121,122,123,124,125,126,71,72,73,
            0,0,73,86,78,75,79,0,82,83,
            0,0,86,0,88,89,87,0,86,0,
            0,14,65,0,0,0,0,0,102,103,
            75,105,106,107,108,109,110,14,0,113,
            114,115,0,117,118,119,120,121,122,123,
            124,125,126,0,0,129,0,1,2,3,
            4,5,6,7,8,9,10,11,12,13,
            14,0,1,2,3,4,5,6,7,8,
            9,10,11,12,13,14,79,0,32,33,
            34,35,36,0,38,39,40,41,42,43,
            44,45,79,32,33,34,35,36,0,38,
            39,40,41,42,43,44,45,0,0,0,
            0,65,84,0,0,0,0,104,72,0,
            0,14,0,0,0,79,65,14,0,0,
            0,0,104,72,0,0,14,0,0,0,
            79,0,1,2,3,4,5,6,7,8,
            9,14,14,12,13,0,1,2,3,4,
            5,6,7,8,9,0,0,12,13,0,
            0,0,65,32,33,34,35,36,0,38,
            39,40,41,42,43,44,45,32,33,34,
            35,36,79,38,39,40,41,42,43,44,
            45,79,65,0,1,2,3,4,5,6,
            7,8,9,72,73,12,13,79,0,78,
            0,1,2,3,4,5,6,72,73,0,
            10,11,0,78,0,32,33,34,35,36,
            0,38,39,40,41,42,43,44,45,0,
            0,1,2,3,4,5,6,7,8,9,
            0,0,12,13,0,0,1,2,3,4,
            0,6,7,8,9,72,73,12,13,14,
            0,78,32,33,34,35,36,0,38,39,
            40,41,42,43,44,45,0,0,0,2,
            0,14,0,0,7,8,9,0,0,0,
            0,0,15,16,17,18,19,20,21,22,
            0,14,72,73,0,0,0,0,78,32,
            33,34,35,36,0,38,39,40,41,42,
            43,44,45,0,79,2,0,0,0,0,
            7,8,9,0,0,0,0,0,15,16,
            17,18,19,20,21,22,79,0,0,104,
            0,0,65,0,0,32,33,34,35,36,
            73,38,39,40,41,42,43,44,45,0,
            1,2,3,4,5,6,86,0,0,10,
            11,0,0,14,0,1,2,3,4,5,
            6,7,8,9,10,11,0,0,0,0,
            0,0,0,0,0,115,116,117,118,119,
            120,121,122,123,124,125,126,0,1,2,
            3,4,5,6,7,8,9,10,11,0,
            1,2,3,4,5,6,0,0,0,10,
            11,72,73,14,0,0,0,78,79,0,
            0,0,0,0,5,86,0,1,2,3,
            4,5,6,0,14,2,10,11,84,0,
            14,0,0,104,0,0,0,0,15,16,
            17,18,19,20,21,22,0,1,2,3,
            4,5,6,0,65,0,10,11,49,50,
            0,84,0,0,0,0,0,71,0,71,
            7,8,9,0,78,71,78,14,0,14,
            14,72,78,73,0,0,0,14,72,79,
            0,0,0,0,0,79,0,0,102,103,
            102,103,0,0,0,0,102,103,0,0,
            0,0,0,0,0,0,0,0,72,0,
            0,0,0,127,128,127,128,0,65,0,
            0,127,128,0,0,0,73,0,129,73,
            75,0,0,134,0,79,0,0,75,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,0,0,
            0
        };
    };
    public final static char termCheck[] = TermCheck.termCheck;
    public final int termCheck(int index) { return termCheck[index]; }

    public interface TermAction {
        public final static char termAction[] = {0,
            9900,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,9900,8841,8841,
            8841,8841,8841,8841,8841,8841,1,9900,8841,8841,
            756,9910,8841,8841,8841,8841,8841,8841,8841,8841,
            1,8771,8759,8763,8767,860,8756,8790,8784,8787,
            818,5597,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            8841,8841,8841,8841,8841,8841,8841,8841,8841,8841,
            9900,3598,9909,9900,8841,9900,9619,8737,8737,8737,
            8737,8737,8730,8737,8737,8737,8737,8737,8737,9758,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            9623,1,115,1,1,1,748,9900,3262,1,
            9911,2489,721,420,7352,757,10108,1,1,3762,
            2655,111,9907,1,35,3863,3260,3389,3054,3816,
            5147,9900,3861,1108,3837,1789,3826,10,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,9761,9761,9761,9761,9761,9761,
            9761,9761,9761,9761,3862,9761,9761,9761,1983,8149,
            1774,9761,9761,9761,9761,7321,5153,9761,9761,9761,
            9761,129,9761,121,9761,137,8080,9761,9761,9761,
            9761,9761,9761,8103,9761,9761,9761,9761,9761,8,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9782,9782,9782,9782,
            9782,9782,9782,9782,9782,9782,9900,9782,9782,9782,
            9900,6652,6683,9782,9782,9782,9782,9900,9900,9782,
            9782,9782,9782,782,9782,141,9782,5983,5954,9782,
            9782,9782,9782,9782,9782,3331,9782,9782,9782,9782,
            9782,9900,9619,8737,8737,8737,8737,8737,8730,8737,
            8737,8737,8737,8737,8737,9626,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,9623,1,149,1,
            1,1,9900,6652,6683,1,9911,2489,721,39,
            333,757,10108,1,1,9938,2655,1358,1198,1227,
            135,3863,3260,3389,3054,3816,5147,9900,3861,1108,
            3837,1789,3826,9900,9619,8737,8737,8737,8737,8737,
            8730,8737,8737,8737,8737,8737,8737,9626,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,9623,1,
            130,1,1,1,1166,1076,9900,1,9911,2489,
            721,4215,665,757,10108,1,1,9900,2655,1358,
            1198,1227,1741,3863,3260,3389,3054,3816,5147,3677,
            3861,1108,3837,1789,3826,9900,9619,8737,8737,8737,
            8737,8737,8730,8737,8737,8737,8737,8737,8737,9626,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            9623,1,150,1,1,1,5983,5954,9900,1,
            9911,2489,721,4252,348,757,10108,1,1,9900,
            2655,1358,1198,1227,1939,3863,3260,3389,3054,3816,
            5147,343,3861,1108,3837,1789,3826,9900,9619,8737,
            8737,8737,8737,8737,8730,8737,8737,8737,8737,8737,
            8737,9626,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,9623,1,5871,1,1,1,1166,1076,
            9900,1,9911,2489,721,2193,662,757,10108,1,
            1,9900,2655,9329,9335,9332,5617,3863,3260,3389,
            3054,3816,5147,9900,3861,1108,3837,1789,3826,9900,
            9619,8737,8737,8737,8737,8737,8730,8737,8737,8737,
            8737,8737,8737,9626,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,9623,1,3862,1,1,1,
            9900,4154,9900,1,9911,2489,721,9900,653,757,
            10108,1,1,1120,2655,1358,1198,1227,484,3863,
            3260,3389,3054,3816,5147,9900,3861,1108,3837,1789,
            3826,9900,9619,8737,8737,8737,8737,8737,8730,8737,
            8737,8737,8737,8737,8737,9626,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,9623,1,133,1,
            1,1,4098,7934,9900,1,9911,2489,721,1220,
            654,757,10108,1,1,632,2655,1358,1198,1227,
            3017,3863,3260,3389,3054,3816,5147,190,3861,1108,
            3837,1789,3826,9900,9619,8737,8737,8737,8737,8737,
            8730,8737,8737,8737,8737,8737,8737,9626,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,9623,1,
            9317,1,1,1,131,9900,4608,1,9911,2489,
            721,2213,431,757,10108,1,1,5050,2655,1358,
            1198,1227,1,3863,3260,3389,3054,3816,5147,629,
            3861,1108,3837,1789,3826,9900,9619,8737,8737,8737,
            8737,8737,8730,8737,8737,8737,8737,8737,8737,9626,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            9623,1,1604,1,1,1,2,9900,619,1,
            9911,2489,721,2915,366,757,10108,1,1,91,
            2655,9445,9451,9448,9433,3863,3260,3389,3054,3816,
            5147,9900,3861,1108,3837,1789,3826,9900,9619,8737,
            8737,8737,8737,8737,8730,8737,8737,8737,8737,8737,
            8737,9626,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,9623,1,606,1,1,1,151,1510,
            337,1,9911,2489,721,10337,366,757,10108,1,
            1,5119,2655,1358,1198,1227,155,3863,3260,3389,
            3054,3816,5147,10236,3861,1108,3837,1789,3826,9900,
            9619,8737,8737,8737,8737,8737,8730,8737,8737,8737,
            8737,8737,8737,9626,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,9623,1,9900,1,1,1,
            157,153,1,1,9911,2489,721,7949,655,757,
            10108,1,1,271,2655,1358,1198,1227,9635,3863,
            3260,3389,3054,3816,5147,4531,3861,1108,3837,1789,
            3826,9900,9619,8737,8737,8737,8737,8737,8730,8737,
            8737,8737,8737,8737,8737,9626,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,9623,1,353,1,
            1,1,9900,9263,9900,1,9911,2489,721,4703,
            4500,757,10108,1,1,118,2655,9900,9912,9900,
            9900,3863,3260,3389,3054,3816,5147,218,3861,1108,
            3837,1789,3826,9900,9311,9311,9311,9311,9311,9311,
            9311,9311,9311,9311,9311,9311,9311,9311,9919,10272,
            10273,1439,258,9921,9922,9920,9916,9917,9918,8856,
            8850,8853,7189,4159,9900,9311,9311,9311,9311,9311,
            1613,9311,9311,9311,9311,9311,9311,9311,9311,9911,
            9311,9311,9311,9311,8865,8862,8859,8883,8871,9900,
            8889,8868,8880,8847,8874,8877,8886,8844,9311,38,
            9248,9239,9242,9245,9311,9311,9311,431,9311,9236,
            5597,9311,9311,424,1358,1198,1227,9311,9311,9311,
            9311,9311,9311,366,8750,8740,9054,8747,860,849,
            1358,1198,1227,818,5597,9311,9311,9311,9311,9311,
            9311,9311,9311,9311,9311,9311,9311,9311,9311,9311,
            9311,9311,9311,9311,9311,9311,9311,9311,9311,9311,
            9311,9311,9311,9897,9900,9900,9900,9311,9900,9436,
            9436,9436,9436,9436,9436,9436,9436,9436,9436,9436,
            9436,9436,9436,9900,9900,117,9900,259,9900,9914,
            10602,10601,9915,9900,8904,8898,8901,7352,818,5597,
            9436,9436,9436,9436,9436,5769,9436,9436,9436,9436,
            9436,9436,9436,9436,328,9436,9436,9436,9436,8913,
            8910,8907,8931,8919,8729,8937,8916,8928,8895,8922,
            8925,8934,8892,9436,37,9314,9314,9314,9314,9436,
            9436,9436,661,9436,9314,355,9436,9436,3436,1358,
            1198,1227,9436,9436,9436,9436,9436,9436,662,8750,
            8740,9054,8747,860,849,1358,1198,1227,818,5597,
            9436,9436,9436,9436,9436,9436,9436,9436,9436,9436,
            9436,9436,9436,9436,9436,9436,9436,9436,9436,9436,
            9436,9436,9436,9436,9436,9436,9436,9436,7321,5153,
            3832,2335,9436,39,8750,8740,8743,8747,6776,849,
            1358,1198,1227,7911,5597,7819,7842,1613,10199,10197,
            10205,10201,10202,10200,10203,10204,1193,10566,10567,10206,
            10207,10198,10573,10574,10575,10272,10273,1439,10190,10194,
            8155,10188,10195,10191,10167,10193,10192,10189,10168,9919,
            7796,7773,7888,7865,9921,9922,9920,9916,9917,9918,
            7750,2053,2205,2100,7711,2147,2050,7282,9900,10334,
            9900,4893,10335,10336,2393,3705,9900,2006,39,8750,
            8740,9054,8747,6776,849,1358,1198,1227,7911,5597,
            7819,7842,9900,10199,10197,10205,10201,10202,10200,10203,
            10204,1193,10566,10567,10206,10207,10198,10573,10574,10575,
            10272,10273,1439,10190,10194,8155,10188,10195,10191,10167,
            10193,10192,10189,10168,9919,7796,7773,7888,7865,9921,
            9922,9920,9916,9917,9918,7750,2053,2205,2100,7711,
            2147,2050,7282,1725,10334,346,4893,10335,10336,9900,
            1130,227,2006,9900,9357,9357,9357,9357,263,9353,
            8737,8737,8737,263,263,263,263,9361,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,9900,
            8771,8759,8763,8767,860,8756,8790,8784,8787,818,
            5597,9233,9233,9900,9066,9057,9060,9063,263,1,
            9350,1,1,1,9900,9914,10602,10601,9915,4210,
            2202,1445,9900,757,10348,257,631,263,453,626,
            452,9786,8805,8799,8802,1358,1198,1227,9900,10436,
            10199,10197,10205,10201,10202,10200,10203,10204,134,10566,
            10567,10206,10207,10198,10573,10574,10575,8814,8811,8808,
            8832,8820,10525,8838,8817,8829,8796,8823,8826,8835,
            8793,9900,2826,3785,10371,10372,10373,9900,9357,9357,
            9357,9357,263,9353,8737,8737,8737,263,263,263,
            263,9533,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,9900,8771,8759,8763,8767,860,8756,
            8790,8784,8787,818,5597,9299,9299,9900,15475,15384,
            15409,15412,263,1,9350,1,1,1,48,9066,
            9057,9060,9063,4210,2202,393,4608,757,10348,570,
            9900,263,657,9900,451,9900,9674,9668,9671,9817,
            9823,9820,9900,10436,10199,10197,10205,10201,10202,10200,
            10203,10204,337,10566,10567,10206,10207,10198,10573,10574,
            10575,10272,10273,1439,10190,10194,9900,10188,10195,10191,
            10167,10193,10192,10189,10168,10236,2355,3785,10371,10372,
            10373,9900,8737,8737,8737,8737,263,8737,8730,8737,
            8737,263,263,263,263,8781,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,15410,1,1,1,
            1,15539,1,15217,1,1,1,9900,836,10292,
            9900,29,423,423,423,423,9641,423,423,423,
            423,423,423,9641,9641,9641,263,1,8734,1,
            1,1,433,9914,10602,10601,9915,3256,721,9900,
            9900,757,10145,423,423,423,423,423,253,423,
            423,423,423,423,423,423,423,10436,9900,9900,
            9835,9835,9835,9835,9835,9835,9835,9835,9835,9835,
            9835,9835,9835,494,7510,9900,9641,37,9314,9314,
            9314,9314,9257,9641,1358,1198,1227,4954,4910,366,
            9641,9900,15475,15384,15409,15412,253,9900,8737,8737,
            8737,8737,263,8737,8730,8737,8737,263,263,263,
            263,263,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,15410,1,1,1,1,15539,1,15217,
            1,1,1,9835,9936,9305,9900,638,649,649,
            649,649,649,649,649,649,649,649,649,9867,
            9867,9862,263,1,8734,1,1,1,327,9914,
            10602,10601,9915,3256,721,9900,711,757,10145,649,
            649,649,649,649,9900,649,649,649,649,649,
            649,649,649,10436,344,8771,8759,8763,8767,860,
            8756,8790,8784,8787,818,5597,9233,9233,10272,10273,
            1439,423,9867,7577,9900,8750,8740,9054,8747,649,
            849,2826,9326,551,9442,5597,9867,37,9314,9314,
            9314,9314,254,9900,8737,8737,8737,8737,263,8737,
            8730,8737,8737,263,263,263,263,263,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,15410,1,
            1,1,1,15539,1,15217,1,1,1,9900,
            9900,2700,9051,260,8444,9900,9914,10602,10601,9915,
            8964,8958,8961,9900,9936,2237,1228,114,263,1,
            8734,1,1,1,1786,490,1,9904,9900,3256,
            721,4473,9900,757,10145,8973,8970,8967,8991,8979,
            676,8997,8976,8988,8955,8982,8985,8994,8952,10436,
            9900,8737,8737,8737,8737,263,8737,8730,8737,8737,
            263,263,263,263,9464,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,15410,1,1,1,1,
            15539,1,15217,1,1,1,9251,9900,1613,676,
            261,136,8507,139,676,676,10448,9015,9009,9012,
            36,9814,9805,9808,9811,263,1,8734,1,1,
            1,493,8080,1,9903,9900,3256,721,4473,8103,
            757,10145,9024,9021,9018,9042,9030,254,9048,9027,
            9039,9006,9033,9036,9045,9003,10436,9900,8737,8737,
            8737,8737,263,8737,8730,8737,8737,263,263,263,
            263,9464,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,15410,1,1,1,1,15539,1,15217,
            1,1,1,9308,9900,1613,576,650,9900,8505,
            656,576,9900,3873,9081,9075,9078,9826,9832,9829,
            3677,9900,263,1,8734,1,1,1,788,781,
            9900,382,485,3256,721,9906,3141,757,10145,9090,
            9087,9084,9108,9096,254,9114,9093,9105,9072,9099,
            9102,9111,9069,10436,9900,8737,8737,8737,8737,263,
            8737,8730,8737,8737,263,263,263,263,9464,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,15410,
            1,1,1,1,15539,1,15217,1,1,1,
            9905,6454,113,1613,691,4147,9900,9900,6508,6652,
            6683,9479,9473,9476,326,1378,1378,1378,1378,263,
            1,8734,1,1,1,9900,9900,9900,9900,29,
            3256,721,6427,6400,757,10145,9488,9485,9482,9506,
            9494,254,9512,9491,9503,9470,9497,9500,9509,9467,
            10436,9900,8737,8737,8737,8737,263,8737,8730,8737,
            8737,263,263,263,263,263,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,15410,1,1,1,
            1,15539,1,15217,1,1,1,454,608,10509,
            1495,571,138,3876,1358,1198,1227,8080,9683,9677,
            9680,3498,1,460,8103,112,263,1,8734,1,
            1,1,640,476,1,9900,9439,3256,721,4473,
            10510,757,10145,10272,10273,1439,10190,10194,376,10188,
            10195,10191,10167,10193,10192,10189,10168,10436,9900,8737,
            8737,8737,8737,263,8737,8730,8737,8737,263,263,
            263,263,263,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,15410,1,1,1,1,15539,1,
            15217,1,1,1,9254,132,1613,376,572,9907,
            9900,154,376,376,1,9692,9686,9689,5050,9900,
            6652,6683,3331,263,1,8734,1,1,1,383,
            8080,1,464,9908,3256,721,4473,8103,757,10145,
            10272,10273,1439,10190,10194,9629,10188,10195,10191,10167,
            10193,10192,10189,10168,10436,9900,8737,8737,8737,8737,
            263,8737,8730,8737,8737,263,263,263,263,263,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            15410,1,1,1,1,15539,1,15217,1,1,
            1,1613,9900,1613,9900,573,9907,8514,1,2099,
            9632,639,9701,9695,9698,125,1591,116,10294,4703,
            263,1,8734,1,1,1,124,29,9900,7352,
            9900,3256,721,1137,9900,757,10145,10272,10273,1439,
            10190,10194,9906,10188,10195,10191,10167,10193,10192,10189,
            10168,10436,9900,8737,8737,8737,8737,263,8737,8730,
            8737,8737,263,263,263,263,263,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,15410,1,1,
            1,1,15539,1,15217,1,1,1,9257,6652,
            6683,2343,574,6652,6683,5329,9900,9905,9900,9710,
            9704,9707,4360,2201,6652,6683,2237,263,1,8734,
            1,1,1,123,9900,9900,9900,9900,3256,721,
            7321,5153,757,10145,10272,10273,1439,10190,10194,9900,
            10188,10195,10191,10167,10193,10192,10189,10168,10436,9900,
            8737,8737,8737,8737,263,8737,8730,8737,8737,263,
            263,263,263,263,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,1,1,1,15410,1,1,1,1,15539,
            1,15217,1,1,1,9900,8771,8759,8763,8767,
            860,8756,8790,8784,8787,818,5597,9299,9299,5219,
            6751,6652,6683,9900,263,1,8734,1,1,1,
            9900,122,156,9900,9900,3256,721,9906,2251,757,
            10145,380,8750,8740,9054,8747,6481,849,1358,1198,
            1227,818,5597,366,366,10436,9900,8737,8737,8737,
            8737,263,8737,8730,8737,8737,263,263,263,263,
            263,1,1,1,1,1,1,1,1,1,
            1,1,1,1,1,1,1,1,1,1,
            1,15410,1,1,1,1,15539,1,15217,1,
            1,1,9905,39,9900,3545,371,1722,4473,9938,
            1358,1198,1227,1613,441,366,366,380,9906,6652,
            6683,263,1,8734,1,1,1,9900,9527,9900,
            9900,9900,3256,721,2351,4350,757,10145,9776,9773,
            9770,4531,158,1,8750,8740,9054,8747,6776,849,
            3465,9900,10436,7911,5597,7376,7842,9904,10199,10197,
            10205,10201,10202,10200,10203,10204,1653,10566,10567,10206,
            10207,10198,10573,10574,10575,1613,380,9900,1660,9530,
            6613,380,380,9905,9900,9424,9415,9418,9421,9919,
            7796,7773,7888,7865,9921,9922,9920,9916,9917,9918,
            7750,2053,2205,2100,7711,2147,2050,7282,323,9000,
            9000,9000,9000,120,318,1358,1198,1227,1,8771,
            8759,8763,8767,2658,849,39,39,9900,7911,5597,
            7819,7842,47,9400,9406,9382,9394,9391,9397,9388,
            9385,9364,9412,9409,9379,9376,9403,9373,9370,9367,
            39,9936,4500,583,9903,6613,9938,1358,1198,1227,
            7189,4159,366,366,9919,7796,7773,7888,7865,9921,
            9922,9920,9916,9917,9918,7750,2053,2205,2100,7711,
            2147,2050,7282,1,8771,8759,8763,8767,8753,8756,
            9900,9900,2006,8778,8775,8,552,1,7555,1474,
            39,39,1,8771,8759,8763,8767,9605,8756,9894,
            9900,9260,9566,8775,9554,9557,9912,9400,9406,9382,
            9394,9391,9397,9388,9385,9364,9412,9409,9379,9376,
            9403,9373,9370,9367,480,9302,9302,9302,9302,9536,
            9302,9302,9302,9302,9900,9900,9302,9302,9578,9551,
            9548,9563,9560,9572,9569,9575,9587,9584,9581,9545,
            9593,9602,9596,9542,9599,9590,9539,481,9656,9656,
            9656,9656,9911,9653,9644,9650,9647,9911,397,9659,
            9659,7579,9894,1,9608,9608,39,8750,8740,9054,
            8747,6776,849,9900,37,9900,7911,5597,7399,7842,
            9904,10199,10197,10205,10201,10202,10200,10203,10204,1653,
            10566,10567,10206,10207,10198,10573,10574,10575,9900,9900,
            4113,3599,3879,6613,9900,8750,8740,9054,8747,5291,
            9938,405,9919,7796,7773,7888,7865,9921,9922,9920,
            9916,9917,9918,7750,2053,2205,2100,7711,2147,2050,
            7282,4445,39,8750,8740,9054,8747,6776,849,9900,
            2006,9936,7911,5597,7819,7842,9873,10199,10197,10205,
            10201,10202,10200,10203,10204,1653,10566,10567,10206,10207,
            10198,10573,10574,10575,659,9278,9278,9278,9278,6613,
            664,1358,1198,1227,9900,9900,3881,9903,9919,7796,
            7773,7888,7865,9921,9922,9920,9916,9917,9918,7750,
            2053,2205,2100,7711,2147,2050,7282,1846,1,8771,
            8759,8763,8767,860,8756,119,2006,9326,818,5597,
            174,8750,8740,9054,8747,6776,849,10391,9900,9907,
            7911,5597,7819,7842,2493,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,92,9755,9755,9755,9755,6613,9755,9755,
            9755,9755,7189,4159,9755,9755,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,9900,8750,8740,9054,8747,
            9900,9938,9900,9900,2006,39,8750,8740,9054,8747,
            6776,849,39,39,9900,7911,5597,7819,7842,9323,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,95,9856,9856,
            9856,9856,6613,9853,9844,9850,9847,1,9900,9859,
            9859,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            9458,1,8750,8740,9054,8747,6776,849,10377,2006,
            9326,7911,5597,7819,7842,1495,10199,10197,10205,10201,
            10202,10200,10203,10204,1653,10566,10567,10206,10207,10198,
            10573,10574,10575,333,9914,10602,10601,9915,6613,371,
            1358,1198,1227,9461,3468,9900,9900,9919,7796,7773,
            7888,7865,9921,9922,9920,9916,9917,9918,7750,2053,
            2205,2100,7711,2147,2050,7282,9900,9914,10602,10601,
            9915,10272,10273,1439,320,2006,614,8750,8740,9054,
            8747,6776,849,39,39,475,7911,5597,7819,7842,
            410,10199,10197,10205,10201,10202,10200,10203,10204,1653,
            10566,10567,10206,10207,10198,10573,10574,10575,9900,8750,
            8740,9054,8747,6613,849,9900,1786,3264,818,5597,
            100,9900,9919,7796,7773,7888,7865,9921,9922,9920,
            9916,9917,9918,7750,2053,2205,2100,7711,2147,2050,
            7282,9900,9066,9057,9060,9063,1,10219,8057,921,
            2006,1,8771,8759,8763,8767,2658,849,39,39,
            9912,7911,5597,7819,7842,9900,9400,9406,9382,9394,
            9391,9397,9388,9385,9364,9412,9409,9379,9376,9403,
            9373,9370,9367,9900,8750,8740,9054,8747,6613,849,
            9900,9900,9779,818,5597,326,4651,9919,7796,7773,
            7888,7865,9921,9922,9920,9916,9917,9918,7750,2053,
            2205,2100,7711,2147,2050,7282,10371,10372,10373,99,
            4113,9911,152,8057,921,2006,39,8750,8740,9054,
            8747,6776,849,39,39,5119,7911,5597,7819,7842,
            9323,10199,10197,10205,10201,10202,10200,10203,10204,1653,
            10566,10567,10206,10207,10198,10573,10574,10575,430,8949,
            8949,8949,8949,6613,318,8940,8946,8943,13490,9900,
            9900,403,9919,7796,7773,7888,7865,9921,9922,9920,
            9916,9917,9918,7750,2053,2205,2100,7711,2147,2050,
            7282,9841,39,8750,8740,9054,8747,6776,849,9900,
            2006,9326,7911,5597,7819,7842,9904,10199,10197,10205,
            10201,10202,10200,10203,10204,1653,10566,10567,10206,10207,
            10198,10573,10574,10575,9900,318,103,9900,462,6613,
            100,9838,3778,43,9430,9430,9430,9430,9919,7796,
            7773,7888,7865,9921,9922,9920,9916,9917,9918,7750,
            2053,2205,2100,7711,2147,2050,7282,1896,39,8750,
            8740,9054,8747,6776,849,2685,9900,582,7911,5597,
            7819,7842,9323,10199,10197,10205,10201,10202,10200,10203,
            10204,1653,10566,10567,10206,10207,10198,10573,10574,10575,
            660,9275,9275,9275,9275,6613,664,9266,9272,9269,
            9427,2452,9779,9903,9919,7796,7773,7888,7865,9921,
            9922,9920,9916,9917,9918,7750,2053,2205,2100,7711,
            2147,2050,7282,9900,39,8750,8740,9054,8747,6776,
            849,9900,9900,9326,7911,5597,7819,7842,9904,10199,
            10197,10205,10201,10202,10200,10203,10204,1653,10566,10567,
            10206,10207,10198,10573,10574,10575,9900,664,9900,73,
            431,6613,9900,15285,15285,15285,15285,1358,1198,1227,
            9919,7796,7773,7888,7865,9921,9922,9920,9916,9917,
            9918,7750,2053,2205,2100,7711,2147,2050,7282,594,
            39,8750,8740,9054,8747,6776,849,4113,432,145,
            7911,5597,7819,7842,423,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,9900,8750,8740,9054,8747,6613,849,9936,
            9870,1495,9442,5597,9900,9903,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            6776,849,9900,4157,2006,7911,5597,7819,7842,1495,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,6652,6683,2718,
            9900,1,6613,45,9728,9728,9728,9728,9900,9900,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,2658,849,1711,9900,144,
            7911,5597,7819,7842,9900,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,37,9314,9314,9314,9314,6613,835,2,
            9725,9900,9801,9789,9793,9797,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            2658,849,9900,39,2006,7911,5597,7819,7842,9938,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,6652,6683,2185,
            146,9900,6613,9900,16686,16577,16591,16639,9936,1996,
            37,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,6776,849,9900,48,2006,
            7911,5597,7819,7842,10602,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,9900,48,1,148,48,6613,9900,10601,
            9936,6454,9915,1537,9900,9900,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            6029,849,6427,6400,2006,7911,5597,7819,7842,10602,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,9900,9900,48,
            147,874,6613,39,10601,9914,6454,9915,9900,9938,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,6971,849,6427,6400,1610,
            7911,5597,7819,7842,2149,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,9900,1,313,7644,9900,6613,103,9891,
            9914,6454,9900,9838,9900,9900,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            8336,849,6427,6400,142,7911,5597,7819,7842,877,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,9900,9900,9900,
            877,9900,6613,7230,10371,10372,10373,9900,9900,9900,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,8363,849,9900,9900,9900,
            7911,5597,7819,7842,544,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,6652,6683,9900,9900,9900,6613,9900,9900,
            9900,9900,9900,9900,9900,9900,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            6776,849,9900,9900,9900,7911,5597,7819,7842,542,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,9900,9900,9900,
            7953,9900,6613,9900,9900,9900,9900,9900,9900,9900,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,8433,849,9900,9900,9900,
            7911,5597,7819,7842,9900,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,9900,9900,9900,8273,9900,6613,9900,9900,
            9900,9900,9900,9900,9900,9900,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            2658,849,9900,9900,9900,7911,5597,7819,7842,456,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,9900,3894,9900,
            9900,9900,6613,9900,9900,9900,9900,9900,9900,9900,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            39,8750,8740,9054,8747,2658,849,9900,9900,9900,
            7911,5597,7819,7842,9900,10199,10197,10205,10201,10202,
            10200,10203,10204,1653,10566,10567,10206,10207,10198,10573,
            10574,10575,9900,9900,9900,3941,9900,6613,9900,9900,
            9900,9900,9900,9900,9900,9900,9919,7796,7773,7888,
            7865,9921,9922,9920,9916,9917,9918,7750,2053,2205,
            2100,7711,2147,2050,7282,39,8750,8740,9054,8747,
            6776,849,9900,9900,1,7911,5597,7819,7842,9900,
            10199,10197,10205,10201,10202,10200,10203,10204,1653,10566,
            10567,10206,10207,10198,10573,10574,10575,9458,3649,9900,
            9900,9900,6613,9900,9900,9900,9900,9900,9900,9900,
            9900,9919,7796,7773,7888,7865,9921,9922,9920,9916,
            9917,9918,7750,2053,2205,2100,7711,2147,2050,7282,
            9900,8750,8740,8743,8747,9900,9938,1358,1198,1227,
            9461,3468,9900,9900,9900,10199,10197,10205,10201,10202,
            10200,10203,10204,1103,10566,10567,10206,10207,10198,10573,
            10574,10575,10272,10273,1439,10190,10194,4122,10188,10195,
            10191,10167,10193,10192,10189,10168,9900,9900,9900,9900,
            9900,9900,9900,5363,9900,9900,275,9226,9213,9217,
            9222,1774,9230,9129,9123,9126,10334,9900,4893,10335,
            10336,9198,9204,9180,9192,9189,9195,9186,9183,1103,
            9210,9207,9177,9174,9201,9171,9168,9165,9138,9135,
            9132,9156,9144,4122,9162,9141,9153,9120,9147,9150,
            9159,9117,9900,9900,9900,9900,9900,9900,9900,9900,
            9900,9900,9900,8750,8740,9054,8747,9900,9938,1358,
            1198,1227,10334,9900,4893,10335,10336,10199,10197,10205,
            10201,10202,10200,10203,10204,1103,10566,10567,10206,10207,
            10198,10573,10574,10575,10272,10273,1439,10190,10194,4122,
            10188,10195,10191,10167,10193,10192,10189,10168,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,275,9226,
            9213,9454,9222,9900,9230,9129,9123,9126,10334,9900,
            4893,10335,10336,9198,9204,9180,9192,9189,9195,9186,
            9183,1103,9210,9207,9177,9174,9201,9171,9168,9165,
            9138,9135,9132,9156,9144,4122,9162,9141,9153,9120,
            9147,9150,9159,9117,9900,9900,9900,9914,10602,10601,
            9915,9900,9900,9900,9900,9914,10602,10601,9915,9900,
            9912,1358,1198,1227,10334,9900,4893,10335,10336,10199,
            10197,10205,10201,10202,10200,10203,10204,1299,10566,10567,
            10206,10207,10198,10573,10574,10575,10272,10273,1439,10190,
            10194,9900,10188,10195,10191,10167,10193,10192,10189,10168,
            139,9900,9900,9900,9900,9906,9900,9900,9900,9900,
            275,9722,9713,9716,9719,9900,9910,9129,9123,9126,
            10334,9911,4893,10335,10336,9198,9204,9180,9192,9189,
            9195,9186,9183,1299,9210,9207,9177,9174,9201,9171,
            9168,9165,9138,9135,9132,9156,9144,9900,9162,9141,
            9153,9120,9147,9150,9159,9117,1,9900,2903,9900,
            649,2157,546,9900,1345,9900,10405,9909,10399,10403,
            9905,9906,9900,9908,9611,5871,10334,9900,4893,10335,
            10336,9900,9900,9900,9900,638,2608,1,8771,8759,
            8763,8767,860,8756,8790,8784,8787,818,5597,9731,
            9900,344,9900,10397,10398,10428,10429,9900,9900,9900,
            9900,9900,9900,10406,9900,788,781,2558,2508,2458,
            2408,2358,2308,2258,2208,2158,2106,10408,793,10430,
            9900,9900,1395,3735,10409,9615,9905,9900,2302,2339,
            9900,9900,10407,9900,10419,10418,9907,9900,1728,9900,
            9900,9906,344,1,9900,9900,9900,9900,10424,10425,
            9735,10431,10422,10423,10402,10404,10426,398,9900,10400,
            10401,10427,9900,10412,10413,10414,10410,10411,10420,10421,
            10416,10415,10417,9900,9900,10432,32,424,424,424,
            424,9638,424,424,424,424,424,424,9638,9638,
            9638,637,648,648,648,648,648,648,648,648,
            648,648,648,9767,9767,9767,9905,9900,424,424,
            424,424,424,9900,424,424,424,424,424,424,
            424,424,398,648,648,648,648,648,9900,648,
            648,648,648,648,648,648,648,1,9900,9900,
            9900,9638,5435,1,9900,9900,9900,398,9638,9900,
            9900,9910,1,9900,9900,9638,9767,194,9900,9900,
            9900,9900,4003,648,9900,9900,196,1,1,9900,
            9767,37,10602,10602,10602,10602,10602,10602,10602,10602,
            10602,224,590,10602,10602,37,10601,10601,10601,10601,
            10601,10601,10601,10601,10601,9900,9900,10601,10601,9900,
            9900,9900,9909,10602,10602,10602,10602,10602,9900,10602,
            10602,10602,10602,10602,10602,10602,10602,10601,10601,10601,
            10601,10601,194,10601,10601,10601,10601,10601,10601,10601,
            10601,196,224,37,9915,9915,9915,9915,9915,9915,
            9915,9915,9915,10602,10602,9915,9915,590,9900,10602,
            1,8771,8759,8763,8767,860,8756,10601,10601,9900,
            818,5597,9900,10601,9900,9915,9915,9915,9915,9915,
            9900,9915,9915,9915,9915,9915,9915,9915,9915,9900,
            37,9914,9914,9914,9914,9914,9914,9914,9914,9914,
            9900,9900,9914,9914,9900,1,9608,9608,9608,9608,
            9900,9764,8790,8784,8787,9915,9915,366,366,398,
            9900,9915,9914,9914,9914,9914,9914,1,9914,9914,
            9914,9914,9914,9914,9914,9914,9900,695,9900,9347,
            9900,9906,9900,9900,9344,9338,9341,9900,9900,9900,
            159,9900,10583,10586,10582,10588,10589,10587,10584,10585,
            9900,9910,9914,9914,9900,9900,9900,9900,9914,10272,
            10273,1439,10190,10194,9900,10188,10195,10191,10167,10193,
            10192,10189,10168,694,398,9524,9900,9900,9900,9900,
            9521,9515,9518,9900,9900,9900,9900,9900,10583,10586,
            10582,10588,10589,10587,10584,10585,9905,9900,9900,398,
            9900,9900,9909,9900,9900,10272,10273,1439,10190,10194,
            6096,10188,10195,10191,10167,10193,10192,10189,10168,1,
            8771,8759,8763,8767,6481,8756,3303,9900,9900,818,
            5597,9900,9900,402,1,8771,8759,8763,8767,860,
            8756,8790,8784,8787,818,5597,9900,9900,9900,9900,
            9900,9900,9900,9900,9900,4307,1999,3217,3189,3103,
            3075,2989,2961,2875,2847,2761,2733,1,8771,8759,
            8763,8767,860,8756,8790,8784,8787,818,5597,1,
            8771,8759,8763,8767,8753,8756,126,9900,128,8778,
            8775,1613,402,9910,127,9900,9900,402,402,75,
            9900,9900,9900,9900,9293,1796,1,8771,8759,8763,
            8767,6481,8756,9900,9906,10581,818,5597,3785,9900,
            9629,9900,9900,402,9900,9900,9900,9900,10583,10586,
            10582,10588,10589,10587,10584,10585,1,8771,8759,8763,
            8767,6481,8756,9900,9909,9900,818,5597,9284,9281,
            9900,3785,9900,9900,9900,636,9900,6326,9900,6326,
            9876,9884,9880,87,9320,6326,9662,9888,9900,9739,
            9906,9296,9665,1956,9900,9900,9900,9747,1613,9905,
            9900,9900,9900,9900,9900,9632,9900,9900,6251,5909,
            6251,5909,9900,9900,9900,9900,6251,5909,9900,9900,
            9900,9900,9900,9900,9900,9900,9900,9900,1613,9900,
            9900,9900,9900,4255,1256,4255,1256,9900,9888,9900,
            9900,4255,1256,9900,9900,9900,9888,9900,9287,8396,
            9743,9900,9900,9290,9900,9905,9900,9900,9751
        };
    };
    public final static char termAction[] = TermAction.termAction;
    public final int termAction(int index) { return termAction[index]; }

    public interface Asb {
        public final static char asb[] = {0,
            1459,4,1566,321,1448,1,363,1501,707,707,
            707,1400,67,878,1458,994,321,329,1263,1566,
            649,245,1566,1566,1566,221,261,156,261,875,
            261,1103,261,261,329,330,261,995,1345,100,
            1501,321,642,261,261,1114,330,261,330,1566,
            930,164,164,920,164,651,156,80,581,80,
            782,994,833,938,324,70,70,321,898,330,
            1264,1053,1035,847,1396,579,159,877,8,875,
            152,329,1103,335,330,330,703,219,995,995,
            995,995,995,995,995,995,995,995,644,995,
            1198,1566,930,930,930,930,329,1566,261,861,
            861,834,833,321,321,330,521,1397,335,335,
            261,363,468,1397,261,261,930,261,330,701,
            1298,176,164,164,163,163,156,329,573,784,
            1198,791,796,793,800,798,807,805,809,808,
            810,588,811,321,994,1218,321,261,330,525,
            898,898,330,1264,787,845,786,1585,86,1396,
            1395,1397,159,330,79,865,856,703,156,837,
            330,335,703,330,697,1198,1198,1198,1517,362,
            701,261,1397,1397,1397,954,1608,1608,974,974,
            363,363,363,363,330,598,6,6,598,994,
            861,156,329,697,261,261,335,335,324,239,
            468,468,1264,1298,176,163,163,163,330,1397,
            994,1397,995,995,995,995,995,995,995,995,
            995,995,995,995,995,995,995,995,995,995,
            995,995,995,994,994,994,994,994,994,994,
            994,994,994,994,15,995,1397,842,156,321,
            1193,991,403,468,529,824,898,834,834,1053,
            834,1514,579,1585,1585,1621,1620,851,842,330,
            159,65,878,930,1262,1568,159,79,857,861,
            79,861,703,837,837,330,920,365,1183,1198,
            759,757,764,762,766,765,767,768,781,330,
            219,330,1397,1397,1397,468,362,994,261,955,
            324,1294,1284,1283,1353,267,267,329,644,995,
            1397,1397,920,920,920,920,703,1397,1263,1265,
            1263,1397,468,156,907,330,1566,1196,261,920,
            920,261,1397,1288,1271,1287,781,930,92,92,
            842,842,163,330,834,1219,793,793,791,791,
            791,798,798,798,798,798,798,796,796,805,
            800,800,808,807,809,65,65,810,842,1218,
            403,468,417,524,333,1397,86,1397,597,1397,
            1397,701,1570,861,861,861,861,330,837,841,
            922,841,1154,1170,1170,1170,1170,1149,329,927,
            995,995,995,995,995,995,995,995,995,994,
            994,994,994,994,994,994,994,994,994,994,
            994,995,974,697,261,261,261,995,363,261,
            261,1397,954,65,995,65,834,953,1566,1566,
            1566,955,1566,330,471,834,834,330,156,1608,
            1397,1296,1298,330,701,271,1198,1566,1566,1566,
            1566,330,330,330,1265,701,873,329,330,598,
            261,261,888,994,1285,1285,1292,324,1058,176,
            164,176,780,780,842,834,994,994,1218,994,
            994,468,529,1397,1621,1264,833,995,65,899,
            932,830,1570,861,861,407,841,842,995,330,
            330,995,757,757,757,762,759,759,765,764,
            766,65,767,1397,261,324,944,955,65,1045,
            955,974,974,972,953,974,834,834,905,952,
            1397,1298,703,1264,1397,994,994,994,994,1566,
            1566,219,330,1264,873,1397,261,709,888,994,
            994,1296,1271,176,363,363,841,468,468,597,
            834,1570,995,995,830,830,1570,1570,907,214,
            408,330,842,703,1048,994,261,261,261,994,
            261,955,995,955,1397,321,974,1397,972,1501,
            1566,1397,873,911,1397,330,719,1397,1397,1397,
            1397,598,598,1269,261,219,945,1566,261,891,
            781,261,105,830,830,407,330,329,329,330,
            330,261,598,995,468,955,905,955,834,1501,
            994,955,952,911,911,304,1397,1397,1269,1058,
            891,1343,261,261,330,330,330,261,1397,468,
            994,953,598,834,1397,914,911,1397,1397,318,
            1566,92,330,330,955,1397,834,914,914,156,
            156,320,1299,780,955,914,1621,1263,363
        };
    };
    public final static char asb[] = Asb.asb;
    public final int asb(int index) { return asb[index]; }

    public interface Asr {
        public final static char asr[] = {0,
            5,33,0,135,0,11,10,67,1,4,
            3,2,6,0,24,25,15,16,58,82,
            26,59,51,17,18,19,83,11,60,20,
            21,61,62,52,74,53,63,23,22,27,
            28,54,55,56,46,1,4,5,49,50,
            13,12,47,48,10,57,6,37,64,3,
            2,29,30,31,84,0,46,67,0,85,
            5,78,104,86,73,79,65,72,84,14,
            75,8,9,7,0,14,73,79,1,32,
            0,78,86,73,1,4,3,2,0,14,
            84,75,85,0,82,83,74,49,50,13,
            12,47,48,10,57,61,64,37,5,6,
            11,54,55,56,46,53,51,52,24,25,
            16,28,15,20,18,19,21,22,17,26,
            27,29,30,31,23,59,62,60,58,63,
            87,1,4,3,2,75,14,0,131,132,
            133,84,87,11,14,5,13,12,10,65,
            81,76,96,77,80,24,25,34,7,38,
            15,16,66,32,26,68,39,40,17,41,
            42,18,19,43,44,20,21,35,69,67,
            45,23,70,22,27,33,28,37,8,9,
            29,30,31,1,4,3,2,36,6,0,
            58,82,59,51,83,60,61,62,52,74,
            53,63,54,55,56,46,57,64,37,23,
            68,66,69,70,16,28,15,20,18,19,
            21,22,17,26,27,29,30,31,24,25,
            85,84,104,111,87,75,134,129,49,50,
            112,105,47,48,113,114,88,89,71,78,
            102,103,106,107,108,109,110,115,116,86,
            117,118,119,120,121,122,123,124,125,126,
            73,127,128,34,38,32,39,40,41,42,
            43,44,35,45,36,33,65,14,79,72,
            11,5,10,13,12,8,9,7,6,4,
            3,2,1,0,58,82,59,51,83,11,
            60,61,62,52,74,53,63,54,55,56,
            46,49,50,13,12,47,48,10,57,78,
            64,5,37,6,23,1,4,3,2,68,
            66,69,70,24,25,16,28,15,20,18,
            19,21,22,17,26,27,29,30,31,38,
            44,35,40,43,42,36,39,7,9,8,
            41,45,32,33,34,0,36,1,4,6,
            3,2,131,132,133,0,82,83,5,23,
            59,62,60,58,63,16,28,15,20,18,
            19,21,22,17,26,27,29,30,31,24,
            25,54,55,56,46,53,51,52,10,11,
            6,49,50,13,12,47,48,57,61,64,
            37,74,35,1,4,3,2,111,14,0,
            24,25,15,16,58,82,26,59,51,17,
            18,19,83,11,60,20,21,61,62,52,
            74,53,63,23,22,27,28,54,55,56,
            46,1,4,5,49,50,47,48,10,57,
            6,37,64,3,2,29,30,31,65,14,
            12,13,0,74,34,32,33,35,82,83,
            111,14,49,50,13,12,47,48,10,57,
            61,64,37,5,6,11,24,25,16,28,
            15,20,18,19,21,22,17,26,27,29,
            30,31,23,59,62,60,58,63,1,4,
            3,2,54,55,56,53,51,52,46,0,
            7,14,75,8,9,86,0,7,78,84,
            104,111,87,65,8,9,73,14,79,24,
            25,15,16,58,26,59,51,17,18,19,
            60,20,21,61,62,52,74,53,63,23,
            22,27,28,54,55,56,46,5,49,50,
            13,12,47,48,57,6,37,64,29,30,
            31,11,10,1,4,2,83,82,3,0,
            24,25,34,38,15,16,66,32,26,68,
            39,96,40,17,41,42,18,19,43,76,
            44,20,21,35,69,45,23,70,22,77,
            36,27,33,28,5,13,6,65,37,29,
            30,31,80,81,75,14,12,8,9,7,
            11,10,1,4,3,2,67,0,74,85,
            134,129,49,50,84,104,111,87,39,40,
            41,42,43,11,44,35,45,36,33,1,
            4,72,5,32,38,10,6,7,34,8,
            9,3,2,112,105,47,48,113,114,127,
            128,12,79,65,75,14,89,88,71,102,
            103,106,107,13,108,109,110,115,116,117,
            118,119,120,121,122,123,124,125,126,86,
            78,73,0,111,65,73,79,14,84,0,
            112,105,12,113,114,47,48,89,88,71,
            102,103,127,128,106,107,13,108,109,110,
            78,79,86,117,118,119,120,121,122,123,
            124,125,126,84,104,111,87,115,116,8,
            9,7,73,65,14,0,1,4,3,2,
            73,14,87,0,84,73,79,14,5,0,
            79,14,1,46,0,6,8,9,7,71,
            14,84,75,0,6,14,84,75,8,9,
            7,0,130,0,6,67,84,14,75,8,
            9,7,1,4,3,2,0,34,32,33,
            74,85,78,84,104,79,75,5,7,14,
            73,65,8,9,86,0,14,75,73,0,
            34,32,33,74,14,104,86,73,79,78,
            0,14,73,87,86,0,78,102,103,71,
            0,84,7,72,8,9,71,14,73,65,
            86,5,0,79,96,131,132,133,67,84,
            135,130,136,87,81,85,80,77,76,91,
            93,100,98,90,95,97,99,101,75,92,
            94,65,14,68,66,69,70,38,44,35,
            40,43,42,36,39,7,9,8,41,45,
            34,32,33,74,82,83,23,59,62,60,
            58,63,5,28,26,27,29,30,31,24,
            25,54,55,56,46,53,51,52,10,11,
            6,49,50,13,12,47,48,57,61,64,
            37,1,4,3,2,17,15,21,22,16,
            20,18,19,0,84,104,0,79,14,89,
            88,0,14,84,79,46,0,24,25,34,
            7,38,15,16,66,32,26,68,39,40,
            17,41,42,18,19,43,44,20,21,35,
            69,45,23,70,22,36,27,33,28,1,
            4,6,37,8,9,3,2,29,30,31,
            104,0,6,14,75,8,9,7,1,4,
            3,2,0,37,83,82,47,48,113,114,
            108,109,10,57,86,71,120,121,117,118,
            119,125,124,126,89,88,122,123,106,107,
            102,103,110,115,49,50,105,129,23,68,
            66,69,70,16,28,15,20,18,19,21,
            22,17,26,27,29,30,31,24,25,38,
            44,35,40,43,42,36,39,32,33,34,
            41,45,78,73,1,4,13,6,3,2,
            5,72,8,9,7,12,0,34,7,38,
            66,32,68,39,40,41,42,43,44,35,
            69,45,70,36,33,8,9,74,82,83,
            49,50,13,12,47,48,57,61,64,37,
            5,54,55,56,46,53,51,52,24,25,
            16,28,15,20,18,19,21,22,17,26,
            27,29,30,31,59,62,60,58,63,75,
            14,23,6,11,1,4,3,2,10,0,
            7,13,12,8,9,11,10,6,1,4,
            3,2,5,72,78,86,73,14,79,104,
            0,10,11,5,72,12,13,104,24,25,
            34,7,38,15,16,32,26,68,39,40,
            17,41,42,18,19,43,44,20,21,35,
            69,45,23,70,22,36,27,33,28,1,
            4,6,37,8,9,3,2,29,30,31,
            79,14,66,0,78,73,37,23,68,66,
            69,70,24,25,34,7,38,15,16,32,
            26,39,40,17,41,42,18,19,43,11,
            44,20,21,35,45,22,36,27,33,28,
            4,72,13,12,10,6,65,8,9,3,
            2,29,30,31,5,1,79,14,0,32,
            26,68,39,17,41,18,19,43,44,20,
            21,69,45,70,22,36,27,33,28,66,
            16,15,37,38,34,25,24,29,30,31,
            14,5,13,12,65,80,77,96,40,35,
            42,81,71,8,9,7,67,11,1,4,
            10,6,3,2,23,76,0,87,24,25,
            34,38,15,16,66,32,26,68,39,17,
            41,18,19,43,44,20,21,69,45,23,
            70,22,36,27,33,28,37,29,30,31,
            135,81,76,40,35,42,96,77,80,67,
            7,14,13,65,8,9,10,11,4,3,
            2,6,5,1,12,0,82,83,49,50,
            13,12,47,48,10,57,61,64,37,6,
            11,54,55,56,46,53,51,52,24,25,
            16,28,15,20,18,19,21,22,17,26,
            27,29,30,31,23,59,62,60,58,63,
            72,1,4,3,2,5,0,65,14,5,
            11,10,84,13,12,6,1,4,3,2,
            8,9,7,0,11,10,17,15,21,22,
            16,20,18,19,38,44,35,40,43,42,
            36,39,32,33,34,41,45,78,7,1,
            4,13,12,6,8,9,3,2,72,5,
            79,14,73,0
        };
    };
    public final static char asr[] = Asr.asr;
    public final int asr(int index) { return asr[index]; }

    public interface Nasb {
        public final static char nasb[] = {0,
            275,13,13,197,14,16,5,333,13,13,
            13,319,13,158,319,211,191,273,273,13,
            13,297,13,13,13,13,298,92,298,230,
            298,230,298,13,11,175,298,150,290,197,
            190,268,152,13,13,247,329,13,175,13,
            13,319,319,13,319,219,92,230,13,238,
            13,150,120,30,349,63,63,232,230,240,
            240,188,20,317,199,13,197,171,273,238,
            38,273,238,197,175,12,13,13,150,150,
            150,150,150,150,150,150,150,150,175,325,
            258,13,13,13,13,13,273,13,13,197,
            36,120,13,224,232,175,13,317,197,197,
            124,5,116,317,13,13,13,13,12,72,
            197,197,319,319,197,197,92,273,18,13,
            258,13,13,13,13,13,13,13,13,13,
            13,150,13,191,65,86,224,238,175,110,
            230,238,186,152,317,13,13,256,68,43,
            13,317,340,172,230,230,13,240,92,197,
            240,48,56,172,59,258,258,258,150,46,
            72,13,317,317,317,105,203,203,1,260,
            261,261,261,261,175,76,22,22,76,211,
            36,127,178,182,230,230,48,48,349,290,
            116,116,152,359,359,275,275,197,240,317,
            150,317,150,150,150,150,150,150,150,150,
            150,150,150,150,150,150,150,150,150,150,
            150,150,150,150,150,150,150,150,150,150,
            150,150,150,150,32,150,317,197,92,233,
            230,149,99,116,111,13,238,120,120,188,
            120,13,188,298,256,317,13,317,106,175,
            120,13,185,13,14,332,340,230,230,197,
            238,197,56,197,330,12,13,251,203,144,
            13,13,13,13,13,13,13,13,13,172,
            13,12,317,317,317,116,262,65,286,207,
            349,202,63,63,13,13,13,11,175,150,
            317,317,13,13,13,13,71,317,151,175,
            151,317,116,127,13,240,13,13,197,13,
            13,228,317,13,266,13,13,13,74,74,
            106,106,275,186,120,281,13,13,13,13,
            13,13,13,13,13,13,13,13,13,13,
            13,13,13,13,13,13,13,13,106,197,
            99,116,111,122,13,317,68,317,150,317,
            317,72,190,197,197,41,41,172,330,28,
            13,13,297,298,298,298,298,306,11,13,
            150,150,150,150,150,150,150,150,150,150,
            150,150,150,150,150,150,150,150,150,150,
            211,150,48,59,286,286,286,150,261,197,
            132,317,214,13,161,13,120,13,13,13,
            13,215,13,330,118,120,120,330,141,300,
            317,347,197,175,72,13,258,13,13,13,
            13,172,12,175,168,72,197,178,12,76,
            230,122,197,150,13,13,265,349,359,359,
            319,197,13,13,106,120,150,150,86,150,
            150,116,111,317,317,152,120,150,13,139,
            13,230,232,41,41,101,28,106,150,330,
            175,150,13,13,13,13,13,13,13,13,
            13,13,13,317,156,228,13,215,13,13,
            215,353,353,357,13,353,120,120,13,197,
            317,359,70,172,317,211,211,211,211,13,
            13,13,329,172,97,317,197,122,122,150,
            150,347,222,359,261,261,106,116,116,150,
            120,191,150,150,238,230,232,13,13,273,
            108,240,106,56,317,150,197,79,13,211,
            228,215,150,215,317,268,1,317,243,197,
            13,317,97,197,317,172,286,317,317,317,
            317,76,76,169,13,13,130,13,122,197,
            13,81,85,230,238,135,240,273,273,12,
            172,156,76,150,116,215,13,215,120,191,
            211,215,130,122,197,13,317,317,169,262,
            83,13,81,13,12,240,240,79,317,116,
            150,13,94,120,317,197,122,317,317,197,
            13,74,12,12,215,317,120,83,197,141,
            141,266,314,13,215,83,317,151,261
        };
    };
    public final static char nasb[] = Nasb.nasb;
    public final int nasb(int index) { return nasb[index]; }

    public interface Nasr {
        public final static char nasr[] = {0,
            3,13,10,9,122,157,132,118,131,130,
            4,2,0,188,0,243,0,15,0,173,
            0,4,2,9,10,177,0,185,0,224,
            0,5,47,158,0,190,0,41,1,0,
            147,0,32,208,0,215,0,4,10,9,
            2,13,154,5,0,2,93,0,93,176,
            175,0,95,0,5,35,0,206,0,2,
            158,93,0,145,0,5,124,0,179,0,
            193,0,164,0,106,4,10,9,2,13,
            113,41,0,5,218,0,192,0,213,0,
            4,133,232,0,5,106,0,233,0,5,
            4,10,9,2,13,82,0,5,47,48,
            0,50,0,5,235,0,41,191,0,156,
            0,5,217,0,4,133,196,0,231,0,
            41,59,0,41,57,40,47,59,5,13,
            4,10,9,2,0,181,0,43,1,0,
            13,2,9,10,4,245,0,2,159,0,
            56,2,3,0,2,56,0,200,4,199,
            0,43,93,0,43,138,0,172,0,119,
            43,78,4,2,9,10,5,0,242,32,
            0,32,109,110,5,0,40,53,41,219,
            5,47,0,106,47,53,40,96,41,5,
            0,110,109,10,9,2,78,4,87,43,
            0,5,4,10,9,2,78,27,0,2,
            86,0,57,5,220,0,5,57,236,0,
            237,132,118,131,130,122,0,41,59,47,
            40,5,57,0,32,110,109,78,2,9,
            10,5,4,0,136,92,53,5,40,0,
            4,10,9,2,13,113,41,112,0,2,
            4,118,115,116,117,128,13,67,0,110,
            109,43,4,87,0,118,67,13,115,116,
            117,204,0,57,40,5,32,0,5,40,
            53,92,103,0,4,10,9,13,3,1,
            0,48,4,2,9,10,5,189,0,5,
            53,92,133,51,4,0,31,5,4,43,
            119,0,5,57,135,0,47,221,31,5,
            0
        };
    };
    public final static char nasr[] = Nasr.nasr;
    public final int nasr(int index) { return nasr[index]; }

    public interface TerminalIndex {
        public final static char terminalIndex[] = {0,
            118,132,131,119,2,31,51,129,130,13,
            84,10,9,120,53,57,73,79,80,91,
            92,107,105,48,49,65,110,112,133,134,
            135,59,111,50,94,109,127,52,69,71,
            75,78,81,88,103,117,11,12,7,8,
            72,99,102,114,115,116,14,60,66,89,
            93,95,104,128,125,58,98,68,96,106,
            19,1,44,100,126,82,108,20,123,136,
            137,63,83,30,101,33,124,17,18,113,
            54,55,61,62,64,70,74,76,77,90,
            97,21,22,32,6,23,24,25,26,27,
            122,4,15,16,28,29,34,35,36,37,
            38,39,40,41,42,43,45,46,5,56,
            85,86,87,3,138,67,121
        };
    };
    public final static char terminalIndex[] = TerminalIndex.terminalIndex;
    public final int terminalIndex(int index) { return terminalIndex[index]; }

    public interface NonterminalIndex {
        public final static char nonterminalIndex[] = {0,
            144,150,151,0,0,149,0,0,253,259,
            148,0,158,0,145,147,0,157,163,0,
            0,164,173,174,175,176,271,0,0,0,
            203,140,0,177,166,178,179,180,181,280,
            143,182,272,156,183,0,146,142,184,210,
            200,0,0,0,153,152,167,185,195,0,
            0,0,0,0,0,0,209,0,0,186,
            0,227,0,187,0,188,224,228,189,160,
            190,139,191,0,192,0,170,198,0,0,
            0,0,0,0,229,194,0,0,0,0,
            0,0,201,0,0,141,161,231,232,233,
            0,241,0,172,212,213,214,216,225,235,
            243,211,230,0,215,0,0,279,204,205,
            206,207,244,0,197,202,208,219,221,0,
            222,0,0,234,0,0,0,248,0,250,
            0,264,0,267,0,268,278,0,162,193,
            218,0,220,0,237,240,0,262,0,263,
            0,276,281,0,154,155,159,0,0,169,
            171,0,0,0,0,0,217,0,226,0,
            238,239,0,0,245,252,0,256,257,258,
            261,0,0,265,0,273,0,275,0,0,
            282,284,285,0,0,165,168,0,196,0,
            199,0,0,223,236,242,0,0,246,247,
            249,251,0,254,255,260,266,269,270,0,
            0,274,0,0,277,0,283,0,0,0,
            0,0,0,0,0,0
        };
    };
    public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
    public final int nonterminalIndex(int index) { return nonterminalIndex[index]; }

    public interface ScopePrefix {
        public final static char scopePrefix[] = {
            314,476,778,797,465,494,729,745,756,767,
            548,10,18,420,434,451,512,184,445,568,
            606,322,786,672,28,149,162,193,213,222,
            227,232,285,350,507,518,149,640,122,299,
            426,440,700,169,299,558,149,805,169,372,
            401,24,40,58,90,90,114,118,130,141,
            156,203,218,246,156,537,541,624,665,694,
            721,725,815,819,823,237,134,237,586,602,
            615,633,652,713,1,256,256,384,472,615,
            736,752,763,774,362,683,70,82,111,198,
            198,311,377,64,198,398,417,64,64,198,
            545,662,669,311,198,838,46,52,64,105,
            250,523,590,630,52,33,645,198,265,457,
            523,265,265,484,577,332,484,75,75,96,
            96,244,96,96,96,96,628,827,834,75,
            75,100,393,827,834,207,596,292,244,393,
            244,406
        };
    };
    public final static char scopePrefix[] = ScopePrefix.scopePrefix;
    public final int scopePrefix(int index) { return scopePrefix[index]; }

    public interface ScopeSuffix {
        public final static char scopeSuffix[] = {
            145,290,94,94,290,290,94,94,94,94,
            555,16,16,290,44,290,154,190,431,574,
            612,328,209,678,16,154,167,167,167,201,
            201,44,290,355,160,160,154,94,127,304,
            431,241,705,180,307,563,792,810,174,366,
            366,16,44,62,94,94,94,94,94,145,
            160,94,201,44,160,44,44,290,16,94,
            94,94,94,94,16,836,138,241,555,555,
            555,637,656,705,5,260,274,388,460,619,
            740,740,740,740,366,687,73,73,94,201,
            201,94,94,380,382,16,94,62,62,382,
            44,94,16,94,698,94,49,55,67,108,
            253,526,593,108,659,36,648,717,260,460,
            708,268,279,501,580,335,487,80,88,98,
            147,44,529,531,533,535,44,829,829,77,
            85,102,395,831,831,209,598,294,357,388,
            342,408
        };
    };
    public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
    public final int scopeSuffix(int index) { return scopeSuffix[index]; }

    public interface ScopeLhs {
        public final static char scopeLhs[] = {
            51,117,18,18,91,117,18,18,18,18,
            99,95,95,105,52,91,116,89,63,99,
            98,51,18,20,95,204,3,7,8,196,
            196,195,115,51,116,116,125,58,28,112,
            64,52,177,169,112,99,18,18,169,111,
            71,95,66,88,128,19,19,205,171,102,
            204,199,196,195,125,222,61,59,181,19,
            18,18,18,18,18,12,156,195,99,98,
            98,84,46,177,54,121,121,87,91,98,
            18,18,18,18,111,20,148,141,17,200,
            196,224,109,123,73,95,72,189,88,125,
            100,182,181,215,177,17,66,18,88,97,
            195,125,135,97,22,40,58,177,121,91,
            177,121,121,117,99,51,117,148,141,157,
            237,195,137,132,131,130,94,175,56,148,
            141,245,87,175,56,199,135,115,51,87,
            51,71
        };
    };
    public final static char scopeLhs[] = ScopeLhs.scopeLhs;
    public final int scopeLhs(int index) { return scopeLhs[index]; }

    public interface ScopeLa {
        public final static char scopeLa[] = {
            130,87,79,79,87,87,79,79,79,79,
            79,111,111,87,65,87,1,78,1,79,
            136,75,5,79,111,1,78,78,78,1,
            1,65,87,75,1,1,1,79,79,87,
            1,1,6,78,73,65,1,1,78,79,
            79,111,65,1,79,79,79,79,79,130,
            1,79,1,65,1,65,65,87,111,79,
            79,79,79,79,111,1,79,1,79,79,
            79,84,84,6,73,1,1,12,75,79,
            78,78,78,78,79,5,8,8,79,1,
            1,79,79,5,1,111,79,1,1,1,
            65,79,111,79,10,79,1,79,8,84,
            1,67,86,84,79,3,78,1,1,75,
            67,1,1,75,90,85,1,1,1,37,
            1,65,1,68,66,66,65,6,6,1,
            1,104,13,6,6,5,1,75,1,12,
            1,5
        };
    };
    public final static char scopeLa[] = ScopeLa.scopeLa;
    public final int scopeLa(int index) { return scopeLa[index]; }

    public interface ScopeStateSet {
        public final static char scopeStateSet[] = {
            466,376,268,268,478,376,268,268,268,268,
            111,124,124,522,466,478,376,478,510,111,
            111,466,268,268,124,43,190,238,238,21,
            21,490,376,466,376,376,378,61,391,89,
            510,466,53,46,89,111,268,268,46,128,
            165,124,510,171,378,268,268,86,1,111,
            43,50,21,490,378,41,510,99,18,268,
            268,268,268,268,268,242,8,490,111,111,
            111,69,336,53,466,376,376,450,478,111,
            268,268,268,268,128,268,24,182,268,50,
            21,138,128,130,165,124,165,187,171,378,
            111,5,18,56,53,268,510,268,171,111,
            490,378,13,111,273,493,61,53,376,478,
            53,376,376,376,111,466,376,24,182,380,
            389,490,380,385,385,385,29,58,140,24,
            182,374,450,58,140,50,13,376,466,450,
            466,165
        };
    };
    public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
    public final int scopeStateSet(int index) { return scopeStateSet[index]; }

    public interface ScopeRhs {
        public final static char scopeRhs[] = {0,
            184,5,80,0,44,145,140,142,0,186,
            35,349,142,72,0,139,0,186,349,142,
            35,72,0,186,35,72,0,186,349,142,
            72,0,347,142,0,131,281,0,0,300,
            142,177,0,142,0,142,177,0,220,142,
            0,217,5,0,140,241,0,180,256,142,
            0,224,0,256,142,0,272,224,0,285,
            180,0,272,0,180,0,248,272,0,248,
            0,225,180,0,198,272,0,198,0,217,
            5,37,0,140,0,259,0,279,0,251,
            0,32,172,0,382,92,0,30,194,0,
            196,5,0,217,5,64,0,378,5,343,
            0,377,5,5,8,0,140,140,0,376,
            5,74,0,375,5,130,0,140,195,0,
            142,196,85,0,239,0,265,0,230,193,
            141,23,0,151,0,193,141,23,0,150,
            0,304,142,71,139,0,20,0,338,142,
            71,67,0,20,58,0,33,147,0,20,
            58,0,0,338,142,71,67,229,0,20,
            201,0,304,142,71,147,0,223,141,0,
            156,0,261,5,337,0,337,0,2,0,
            140,0,304,142,71,146,0,223,141,270,
            0,223,141,36,270,0,223,141,370,36,
            0,143,230,193,141,0,230,193,141,0,
            149,142,0,190,0,366,142,190,0,142,
            190,0,246,142,0,193,365,255,0,151,
            0,0,0,0,365,255,0,152,151,0,
            0,0,0,150,0,0,0,0,152,150,
            0,0,0,0,364,142,178,258,0,141,
            0,258,0,143,0,0,141,0,363,142,
            178,250,0,141,0,0,44,141,0,0,
            172,5,0,142,328,327,142,85,326,190,
            0,327,142,85,326,190,0,238,0,239,
            0,326,190,0,101,0,0,238,0,239,
            0,226,101,0,0,238,0,239,0,327,
            142,326,190,0,238,0,226,0,0,238,
            0,279,142,5,0,140,0,0,0,0,
            0,279,142,5,246,0,260,5,0,231,
            0,161,0,212,193,141,0,10,0,0,
            0,0,212,0,9,0,0,251,72,0,
            279,142,5,209,0,209,0,2,0,0,
            140,0,0,0,0,0,225,5,0,271,
            142,178,46,40,0,223,141,76,77,0,
            219,142,0,143,223,141,325,77,0,223,
            141,325,77,0,223,141,86,138,76,0,
            271,142,178,299,76,0,299,76,0,143,
            0,0,141,0,271,142,178,299,275,76,
            0,299,275,76,0,322,323,142,178,138,
            360,68,0,360,68,0,144,143,0,0,
            0,141,0,322,323,142,178,360,68,0,
            143,0,0,0,141,0,223,141,321,68,
            0,230,223,141,321,255,0,223,141,321,
            255,0,193,141,0,98,151,0,215,0,
            214,0,213,0,212,0,320,142,168,0,
            320,142,190,0,184,100,0,355,185,357,
            358,5,97,0,140,194,0,357,358,5,
            97,0,142,0,140,194,0,184,5,90,
            233,95,0,140,142,0,233,95,0,113,
            2,146,140,142,0,272,5,90,0,225,
            194,0,33,184,0,194,0,198,33,184,
            0,272,5,101,0,233,169,272,5,99,
            0,67,194,0,272,5,99,0,140,194,
            67,194,0,356,142,178,0,184,0,251,
            92,0,184,116,220,0,30,192,0,163,
            78,195,5,0,195,5,0,20,176,140,
            0,184,116,182,0,30,184,0,140,164,
            0,261,5,0,251,72,318,0,184,72,
            0,217,5,352,83,141,0,140,0,0,
            0,0,352,83,141,0,2,160,140,0,
            0,0,0,217,5,61,0,162,0,140,
            67,193,141,0,31,162,0,98,151,31,
            162,0,244,223,141,0,161,31,162,0,
            217,5,63,0,184,5,63,0,184,5,
            78,217,71,58,0,217,71,58,0,20,
            2,146,140,0,184,5,78,217,71,60,
            0,217,71,60,0,184,5,78,217,71,
            62,0,217,71,62,0,184,5,78,217,
            71,59,0,217,71,59,0,261,5,140,
            230,193,141,23,0,140,230,193,141,23,
            0,151,2,0,140,0,261,5,139,295,
            193,141,23,0,295,193,141,23,0,150,
            2,0,140,0,261,5,150,0,261,5,
            155,0,184,72,155,0,313,0,31,0,
            31,154,0,192,0,149,0,184,5,0
        };
    };
    public final static char scopeRhs[] = ScopeRhs.scopeRhs;
    public final int scopeRhs(int index) { return scopeRhs[index]; }

    public interface ScopeState {
        public final static char scopeState[] = {0,
            2637,2385,1389,0,1708,1310,0,3709,2096,1745,
            1450,0,5518,8514,8507,8444,0,3251,2953,0,
            2452,1591,0,6148,6096,6044,4411,0,5795,5723,
            5651,5579,5507,5435,5363,5291,5219,5147,4739,4636,
            8505,0,7048,6013,0,4911,3862,4778,0,4147,
            4098,0,1364,767,0,921,0,2213,1120,0,
            4307,4500,4703,4531,1166,1076,5119,2658,3649,1228,
            3303,3217,3189,3103,3075,2989,2961,2875,2847,2761,
            2733,1138,1048,958,0,1345,1137,0,1395,4189,
            1314,3880,3779,3383,6709,910,1445,0,3135,3021,
            8433,2655,2097,2658,1944,8363,8336,6971,6776,6029,
            5795,5723,5651,5579,5507,5435,5363,5291,5219,5147,
            4739,4636,0,2694,2340,1199,1121,4819,6930,6732,
            6481,6282,4473,3055,2941,2827,0,780,0,7534,
            7465,6888,6501,6539,6187,6035,6494,5759,5724,6022,
            5687,5220,5580,5543,5148,5508,4863,3988,3486,5471,
            5436,5364,3882,0,4819,8216,5228,6912,6874,4745,
            6732,5370,6148,6096,6044,6481,4411,6282,7150,5016,
            860,4872,5871,4217,4961,0,8216,4745,0,3137,
            3027,7534,7465,3023,2535,1643,6888,2485,6501,2335,
            2237,2185,6539,986,3419,6187,2083,6035,1925,6494,
            5759,5724,2911,1713,6022,5687,6964,5220,1474,5580,
            5543,1044,5148,2795,4340,5508,4863,1947,3988,3486,
            5471,5436,5364,818,6745,3882,4077,1496,1384,1011,
            849,1728,6732,4872,5370,6148,6096,4819,6044,6481,
            4411,6282,2718,2700,8216,5228,1364,767,6912,5871,
            7150,6874,5016,860,4217,4961,4745,8155,7711,7282,
            6613,4122,3649,6508,7399,8126,1228,4307,3303,3217,
            3189,3103,3075,2989,2961,2875,2847,2761,2733,4500,
            4703,4531,1166,1076,5119,6454,6427,6400,6709,2658,
            7376,788,3331,4608,3677,5983,5954,5050,6683,6652,
            6326,6299,6251,5909,4255,1256,7352,7321,5153,7189,
            4159,8103,8080,1138,1048,8057,958,7911,7888,7865,
            7842,7819,7796,7773,7750,3735,4050,1395,878,4003,
            3941,3894,1956,1896,1846,3832,3785,3599,3548,1314,
            3498,3436,1796,1510,1746,1660,2608,2558,2508,2458,
            2408,2358,2308,2258,2208,2158,2106,2056,716,1613,
            1445,2006,1563,3389,0,7048,6013,6964,6745,878,
            716,4340,4077,0,878,716,4340,4077,6013,0,
            4872,4366,7099,878,6148,6865,4334,6096,6044,6356,
            5769,7048,8498,8466,8305,7940,6172,6013,4082,6535,
            4635,4210,7489,7623,3969,5265,5228,6964,4954,4910,
            4158,716,3142,2793,8297,3859,6084,3464,5871,4340,
            7150,1924,1691,997,5016,925,913,6745,7538,6769,
            4893,6180,3249,4784,4375,5837,4961,3256,4077,6757,
            4819,8271,4406,8454,8265,6930,4411,6136,8402,4767,
            6912,6874,4563,4217,0,5795,5723,5651,5579,5507,
            5435,5363,5291,5219,5147,4739,4636,8149,7215,7083,
            7004,7951,7934,7644,7577,7510,7439,7422,6546,4904,
            8229,0,8396,7230,8273,7953,8433,7949,2658,7579,
            7555,6751,5329,5617,8363,8336,6971,6776,6029,5795,
            5723,5651,5579,5507,5435,5363,5291,5219,5147,4739,
            4636,8149,7215,7083,7004,7951,7934,7644,7577,7510,
            7439,7422,6546,0
        };
    };
    public final static char scopeState[] = ScopeState.scopeState;
    public final int scopeState(int index) { return scopeState[index]; }

    public interface InSymb {
        public final static char inSymb[] = {0,
            0,351,80,177,77,7,142,190,229,42,
            35,67,40,76,273,5,142,76,325,380,
            347,266,8,9,7,34,267,258,268,255,
            269,68,274,139,23,141,294,37,259,326,
            142,5,6,147,146,11,10,139,141,209,
            67,67,67,71,67,46,299,275,138,180,
            184,142,300,278,142,215,209,180,225,141,
            141,5,3,5,5,5,178,365,321,180,
            360,321,180,71,141,223,193,192,37,64,
            61,57,48,47,12,13,50,49,141,10,
            5,63,58,60,62,59,23,150,155,85,
            142,320,300,256,180,141,212,225,71,71,
            194,142,72,5,82,83,139,138,223,193,
            5,71,78,142,178,178,299,86,73,297,
            5,160,162,161,171,163,174,173,176,175,
            179,74,182,73,5,86,256,180,141,72,
            225,180,223,223,381,46,309,310,5,379,
            1,46,142,193,282,140,139,141,138,178,
            141,142,193,67,6,5,5,5,82,83,
            193,140,217,196,184,178,177,194,142,5,
            71,71,71,71,141,5,129,134,5,72,
            142,327,84,193,13,12,142,142,142,259,
            72,72,230,142,142,142,142,178,141,152,
            73,217,105,112,48,47,114,113,12,128,
            127,103,102,78,71,88,89,13,107,106,
            109,108,110,126,125,124,123,122,121,120,
            119,118,117,86,116,115,172,178,250,180,
            193,35,142,251,12,182,180,275,143,84,
            169,5,73,259,384,377,343,5,364,141,
            188,270,76,67,77,190,367,140,139,283,
            180,283,223,178,142,223,304,142,291,5,
            195,163,211,207,216,213,218,220,307,230,
            313,230,217,217,217,72,352,5,169,142,
            142,5,247,246,150,140,139,23,141,37,
            217,184,217,217,217,217,193,261,67,141,
            67,261,184,327,336,141,337,212,212,304,
            304,256,279,280,168,281,338,67,23,66,
            271,271,142,223,169,169,161,161,160,160,
            160,163,163,163,163,163,163,162,162,173,
            171,171,175,174,176,295,184,179,142,178,
            142,186,349,350,12,1,73,169,5,46,
            1,193,142,283,283,142,142,230,142,323,
            138,324,266,267,268,269,374,259,23,195,
            103,102,71,13,107,106,109,108,110,126,
            125,124,123,122,121,120,119,118,117,86,
            116,115,73,6,169,169,169,219,5,353,
            194,172,356,94,92,1,184,14,101,99,
            97,95,90,98,100,93,91,76,85,256,
            260,142,5,141,193,156,5,78,78,78,
            78,230,295,141,223,193,328,73,223,5,
            12,142,169,86,260,225,5,142,73,73,
            78,71,282,282,271,275,84,84,142,349,
            35,186,12,1,378,230,366,84,287,225,
            139,285,180,142,142,84,323,322,86,73,
            141,78,163,163,163,207,195,195,213,211,
            216,184,218,217,142,142,14,84,382,251,
            84,5,5,5,233,5,138,184,138,196,
            279,142,193,67,217,5,5,5,5,140,
            139,244,10,67,142,261,212,187,142,86,
            86,142,256,142,86,86,363,186,186,73,
            143,73,84,86,180,285,180,164,369,270,
            36,141,322,193,163,84,169,315,318,72,
            224,84,104,84,272,194,142,272,358,168,
            90,272,142,169,279,230,169,184,184,184,
            184,5,5,6,138,140,329,130,142,263,
            338,243,73,285,180,73,141,36,370,223,
            230,142,5,72,184,169,225,169,357,142,
            5,169,329,142,169,140,261,261,6,5,
            142,78,243,14,223,141,141,315,261,251,
            86,233,185,320,184,263,142,104,375,194,
            74,66,223,223,136,355,169,142,263,169,
            169,142,5,282,169,142,376,86,73
        };
    };
    public final static char inSymb[] = InSymb.inSymb;
    public final int inSymb(int index) { return inSymb[index]; }

    public interface Name {
        public final static String name[] = {
            "",
            "[",
            "(",
            ".",
            ".*",
            "->",
            "->*",
            "++",
            "--",
            "&",
            "*",
            "+",
            "-",
            "~",
            "!",
            "/",
            "%",
            ">>",
            "<<",
            "<",
            ">",
            "<=",
            ">=",
            "==",
            "!=",
            "^",
            "|",
            "&&",
            "||",
            "?",
            ":",
            "::",
            "...",
            "=",
            "*=",
            "/=",
            "%=",
            "+=",
            "-=",
            ">>=",
            "<<=",
            "&=",
            "^=",
            "|=",
            ",",
            ">?",
            "<?",
            "$empty",
            "_Complex",
            "_Imaginary",
            "restrict",
            "asm",
            "auto",
            "bool",
            "break",
            "case",
            "catch",
            "char",
            "class",
            "const",
            "const_cast",
            "continue",
            "default",
            "delete",
            "do",
            "double",
            "dynamic_cast",
            "else",
            "enum",
            "explicit",
            "export",
            "extern",
            "false",
            "float",
            "for",
            "friend",
            "goto",
            "if",
            "inline",
            "int",
            "long",
            "mutable",
            "namespace",
            "new",
            "operator",
            "private",
            "protected",
            "public",
            "register",
            "reinterpret_cast",
            "return",
            "short",
            "signed",
            "sizeof",
            "static",
            "static_cast",
            "struct",
            "switch",
            "template",
            "this",
            "throw",
            "try",
            "true",
            "typedef",
            "typeid",
            "typename",
            "union",
            "unsigned",
            "using",
            "virtual",
            "void",
            "volatile",
            "wchar_t",
            "while",
            "integer",
            "floating",
            "charconst",
            "stringlit",
            "identifier",
            "Completion",
            "EndOfCompletion",
            "Invalid",
            "RightBracket",
            "RightParen",
            "RightBrace",
            "SemiColon",
            "LeftBrace",
            "typeof",
            "__alignof__",
            "__attribute__",
            "__declspec",
            "vector",
            "pixel",
            "_Decimal32",
            "_Decimal64",
            "_Decimal128",
            "__static_assert",
            "ERROR_TOKEN",
            "EOF_TOKEN",
            "]",
            ")",
            "}",
            ";",
            "{",
            "identifier_token",
            "literal",
            "expression",
            "id_expression",
            "qualified_or_unqualified_name",
            "unqualified_id_name",
            "identifier_name",
            "template_id_name",
            "nested_name_specifier",
            "class_or_namespace_name",
            "nested_name_specifier_with_tem" +
            "plate",
            "class_or_namespace_name_with_t" +
            "emplate",
            "class_name",
            "postfix_expression",
            "simple_type_specifier",
            "pseudo_destructor_name",
            "type_id",
            "type_name",
            "destructor_type_name",
            "unary_expression",
            "cast_expression",
            "new_type_id",
            "expression_list",
            "type_specifier_seq",
            "new_declarator",
            "new_pointer_operators",
            "ptr_operator",
            "new_array_expressions",
            "constant_expression",
            "pm_expression",
            "multiplicative_expression",
            "additive_expression",
            "shift_expression",
            "relational_expression",
            "equality_expression",
            "and_expression",
            "exclusive_or_expression",
            "inclusive_or_expression",
            "logical_and_expression",
            "logical_or_expression",
            "assignment_expression",
            "relational_expression_inTempla" +
            "te",
            "equality_expression_inTemplate",
            "and_expression_inTemplate",
            "exclusive_or_expression_inTemp" +
            "late",
            "inclusive_or_expression_inTemp" +
            "late",
            "logical_and_expression_inTempl" +
            "ate",
            "logical_or_expression_inTempla" +
            "te",
            "assignment_expression_inTempla" +
            "te",
            "expression_list_actual",
            "statement",
            "compound_statement",
            "statement_seq",
            "condition",
            "declarator",
            "for_init_statement",
            "function_definition",
            "declaration",
            "declaration_seq",
            "declaration_specifiers",
            "simple_declaration_specifiers",
            "class_declaration_specifiers",
            "elaborated_declaration_specifi" +
            "ers",
            "enum_declaration_specifiers",
            "type_name_declaration_specifie" +
            "rs",
            "no_type_declaration_specifier",
            "cv_qualifier",
            "no_type_declaration_specifiers",
            "class_specifier",
            "elaborated_type_specifier",
            "enum_specifier",
            "type_name_specifier",
            "class_keyword",
            "enumerator_list",
            "enumerator_definition",
            "namespace_name",
            "init_declarator_list",
            "init_declarator_complete",
            "complete_declarator",
            "initializer",
            "direct_declarator",
            "ptr_operator_seq",
            "function_declarator",
            "basic_direct_declarator",
            "array_direct_declarator",
            "array_modifier",
            "abstract_declarator",
            "direct_abstract_declarator",
            "basic_direct_abstract_declarat" +
            "or",
            "array_direct_abstract_declarat" +
            "or",
            "parameter_declaration_list",
            "parameter_declaration",
            "parameter_init_declarator",
            "parameter_initializer",
            "function_body",
            "handler_seq",
            "initializer_clause",
            "initializer_list",
            "initializer_seq",
            "class_head",
            "access_specifier_keyword",
            "member_declaration",
            "member_declarator_list",
            "member_declaration_list",
            "member_declarator_complete",
            "constant_initializer",
            "bit_field_declarator",
            "base_specifier_list",
            "base_specifier",
            "conversion_function_id",
            "conversion_type_id",
            "conversion_declarator",
            "mem_initializer_list",
            "mem_initializer",
            "mem_initializer_name",
            "operator_id_name",
            "overloadable_operator",
            "template_parameter_list",
            "template_parameter",
            "template_argument_list",
            "template_argument",
            "type_name_specifier_inTemplate",
            "type_name_declaration_specifie" +
            "rs_inTemplate",
            "type_specifier_seq_inTemplate",
            "handler",
            "exception_declaration",
            "type_id_list",
            "attribute_or_decl_specifier",
            "attribute_or_decl_specifier_se" +
            "q",
            "word",
            "extended_decl_modifier_seq",
            "extended_decl_modifier",
            "extended_asm_param",
            "case_range_expression",
            "typeof_declaration_specifiers",
            "typeof_type_specifier",
            "vector_type",
            "vector_type_specifier",
            "all_specifier_qualifiers",
            "all_specifier_qualifier_list",
            "array_modifier_type_qualifiers",
            "type_qualifier_list"
        };
    };
    public final static String name[] = Name.name;
    public final String name(int index) { return name[index]; }

    public final static int
           ERROR_SYMBOL      = 81,
           SCOPE_UBOUND      = 161,
           SCOPE_SIZE        = 162,
           MAX_NAME_LENGTH   = 43;

    public final int getErrorSymbol() { return ERROR_SYMBOL; }
    public final int getScopeUbound() { return SCOPE_UBOUND; }
    public final int getScopeSize() { return SCOPE_SIZE; }
    public final int getMaxNameLength() { return MAX_NAME_LENGTH; }

    public final static int
           NUM_STATES        = 719,
           NT_OFFSET         = 137,
           LA_STATE_OFFSET   = 10615,
           MAX_LA            = 2147483647,
           NUM_RULES         = 715,
           NUM_NONTERMINALS  = 256,
           NUM_SYMBOLS       = 393,
           SEGMENT_SIZE      = 8192,
           START_STATE       = 6546,
           IDENTIFIER_SYMBOL = 0,
           EOFT_SYMBOL       = 135,
           EOLT_SYMBOL       = 135,
           ACCEPT_ACTION     = 8729,
           ERROR_ACTION      = 9900;

    public final static boolean BACKTRACK = true;

    public final int getNumStates() { return NUM_STATES; }
    public final int getNtOffset() { return NT_OFFSET; }
    public final int getLaStateOffset() { return LA_STATE_OFFSET; }
    public final int getMaxLa() { return MAX_LA; }
    public final int getNumRules() { return NUM_RULES; }
    public final int getNumNonterminals() { return NUM_NONTERMINALS; }
    public final int getNumSymbols() { return NUM_SYMBOLS; }
    public final int getSegmentSize() { return SEGMENT_SIZE; }
    public final int getStartState() { return START_STATE; }
    public final int getStartSymbol() { return lhs[0]; }
    public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; }
    public final int getEoftSymbol() { return EOFT_SYMBOL; }
    public final int getEoltSymbol() { return EOLT_SYMBOL; }
    public final int getAcceptAction() { return ACCEPT_ACTION; }
    public final int getErrorAction() { return ERROR_ACTION; }
    public final boolean isValidForParser() { return isValidForParser; }
    public final boolean getBacktrack() { return BACKTRACK; }

    public final int originalState(int state) {
        return -baseCheck[state];
    }
    public final int asi(int state) {
        return asb[originalState(state)];
    }
    public final int nasi(int state) {
        return nasb[originalState(state)];
    }
    public final int inSymbol(int state) {
        return inSymb[originalState(state)];
    }

    public final int ntAction(int state, int sym) {
        return baseAction[state + sym];
    }

    public final int tAction(int state, int sym) {
        int i = baseAction[state],
            k = i + sym;
        return termAction[termCheck[k] == sym ? k : i];
    }
    public final int lookAhead(int la_state, int sym) {
        int k = la_state + sym;
        return termAction[termCheck[k] == sym ? k : la_state];
    }
}
